ohzi-core 10.6.7 → 11.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/build/index.module.js +1 -1
  2. package/build/index.module.js.map +1 -1
  3. package/package.json +9 -11
  4. package/src/BaseApplication.js +3 -0
  5. package/src/Browser.js +4 -4
  6. package/src/Graphics.js +17 -19
  7. package/src/Initializer.js +1 -7
  8. package/src/OS.js +2 -2
  9. package/src/RenderLoop.js +16 -13
  10. package/src/action_sequencer/ActionEvent.js +1 -2
  11. package/src/action_sequencer/ActionSequencer.js +3 -7
  12. package/src/gpu_particles/ParticleAttribute.js +2 -7
  13. package/src/index.js +41 -141
  14. package/src/render_mode/NormalAORender.js +7 -8
  15. package/src/resource_loader/AsyncTextureLoader.js +5 -3
  16. package/src/resource_loader/BasisLoader.js +0 -4
  17. package/src/view_components/ApplicationView.js +2 -29
  18. package/src/view_components/ApplicationViewController.js +95 -0
  19. package/src/view_components/TransitionManager.js +60 -0
  20. package/src/view_components/VCManager.js +9 -0
  21. package/src/view_components/ViewComponent.js +9 -36
  22. package/src/view_components/ViewComponentController.js +73 -0
  23. package/src/view_components/ViewComponentControllerManager.js +59 -0
  24. package/src/view_components/ViewComponentManager.js +3 -13
  25. package/src/view_components/ViewControllerManager.js +91 -0
  26. package/src/view_components/ViewManager.js +11 -104
  27. package/src/view_components/ViewState.js +0 -7
  28. package/src/view_components/WorkerToMain.js +25 -0
  29. package/src/view_components/transition/ActionSequencerBuilder.js +3 -3
  30. package/src/view_components/transition/TransitionTable.js +9 -2
  31. package/types/BaseApplication.d.ts +1 -0
  32. package/types/Browser.d.ts +1 -1
  33. package/types/CameraManager.d.ts +2 -4
  34. package/types/Graphics.d.ts +8 -3
  35. package/types/Initializer.d.ts +1 -1
  36. package/types/RenderLoop.d.ts +1 -2
  37. package/types/SceneManager.d.ts +1 -3
  38. package/types/action_sequencer/ActionSequencer.d.ts +2 -2
  39. package/types/blitter_index.d.ts +6 -0
  40. package/types/index.d.ts +75 -73
  41. package/types/render_mode/NormalAORender.d.ts +1 -0
  42. package/types/resource_loader/AsyncTextureLoader.d.ts +1 -0
  43. package/types/utilities/FrustumPointFitter.d.ts +1 -3
  44. package/types/utilities/OMath.d.ts +9 -9
  45. package/types/view_components/ApplicationView.d.ts +1 -3
  46. package/types/view_components/ApplicationViewController.d.ts +11 -0
  47. package/types/view_components/TransitionManager.d.ts +17 -0
  48. package/types/view_components/VCManager.d.ts +5 -0
  49. package/types/view_components/ViewComponent.d.ts +1 -5
  50. package/types/view_components/ViewComponentController.d.ts +14 -0
  51. package/types/view_components/ViewComponentControllerManager.d.ts +12 -0
  52. package/types/view_components/ViewComponentManager.d.ts +0 -1
  53. package/types/view_components/ViewControllerManager.d.ts +12 -0
  54. package/types/view_components/ViewManager.d.ts +4 -22
  55. package/types/view_components/ViewState.d.ts +0 -1
  56. package/types/view_components/WorkerToMain.d.ts +8 -0
  57. package/types/view_components/transition/ActionSequencerBuilder.d.ts +1 -1
  58. package/types/view_components/transition/TransitionTable.d.ts +2 -0
  59. package/src/Configuration.js +0 -23
  60. package/src/Screen.js +0 -55
  61. package/src/render_mode/TransparencyMixRender.js +0 -147
  62. package/src/view_components/ViewContext.js +0 -15
  63. package/types/Configuration.d.ts +0 -8
  64. package/types/view_components/ViewContext.d.ts +0 -6
@@ -0,0 +1,11 @@
1
+ export class ApplicationViewController extends ViewState {
2
+ constructor({ name, url, transition_data }: {
3
+ name: any;
4
+ url: any;
5
+ transition_data: any;
6
+ });
7
+ url: any;
8
+ current_opacity: number;
9
+ set_opacity(current_state_data: any): void;
10
+ }
11
+ import { ViewState } from "./ViewState";
@@ -0,0 +1,17 @@
1
+ export { transition_manager as TransitionManager };
2
+ declare const transition_manager: TransitionManager;
3
+ declare class TransitionManager {
4
+ transition_table: TransitionTable;
5
+ transition_handler: ViewStateTransitionHandler;
6
+ get action_sequencer(): any;
7
+ get current_state_data(): {};
8
+ before_update(): void;
9
+ update(): void;
10
+ fixed_update(): void;
11
+ add_transitions(transitions: any): void;
12
+ set_transitions(transitions: any): void;
13
+ set_default_state_data(default_state_data: any): void;
14
+ set_transitions_velocity(transitions_velocity: any): void;
15
+ }
16
+ import { TransitionTable } from "./transition/TransitionTable";
17
+ import { ViewStateTransitionHandler } from "./transition/ViewStateTransitionHandler";
@@ -0,0 +1,5 @@
1
+ export { v_c_manager as VCManager };
2
+ declare const v_c_manager: VCManager;
3
+ declare class VCManager extends ViewControllerManager {
4
+ }
5
+ import { ViewControllerManager } from "./ViewControllerManager";
@@ -5,13 +5,9 @@ export class ViewComponent {
5
5
  });
6
6
  name: any;
7
7
  container: any;
8
- hidden: boolean;
9
8
  start(): void;
10
9
  on_enter(): void;
11
10
  update(): void;
12
11
  on_exit(): void;
13
- set_opacity(current_state_data: any): void;
14
- toggle_hidden(): void;
15
- load_html_images(): void;
16
- load_html_videos(): void;
12
+ set_opacity(opacity: any): void;
17
13
  }
@@ -0,0 +1,14 @@
1
+ export class ViewComponentController {
2
+ constructor({ name }: {
3
+ name: any;
4
+ });
5
+ name: any;
6
+ current_opacity: number;
7
+ hidden: boolean;
8
+ start(): void;
9
+ on_enter(): void;
10
+ update(): void;
11
+ on_exit(): void;
12
+ set_opacity(current_state_data: any): void;
13
+ toggle_hidden(): void;
14
+ }
@@ -0,0 +1,12 @@
1
+ export { view_component_contorller_manager as ViewComponentControllerManager };
2
+ declare const view_component_contorller_manager: ViewComponentControllerManager;
3
+ declare class ViewComponentControllerManager {
4
+ component_controllers: any[];
5
+ enabled_component_controllers: Set<any>;
6
+ update(): void;
7
+ register_component_controller(component_controller: any): void;
8
+ enable_component_controller(component_controller: any): void;
9
+ disable_component_controller(component_controller: any): void;
10
+ get(component_name: any): any;
11
+ __set_component_controllers_opacities(): void;
12
+ }
@@ -7,7 +7,6 @@ declare class ViewComponentManager {
7
7
  register_component(component: any): void;
8
8
  enable_component(component: any): void;
9
9
  disable_component(component: any): void;
10
- get_component_by_name(component_name: any): void;
11
10
  get(component_name: any): any;
12
11
  __set_components_opacities(): void;
13
12
  }
@@ -0,0 +1,12 @@
1
+ export class ViewControllerManager {
2
+ view_controllers: any[];
3
+ go_to_view_controller(view_controller_name: any, skip?: boolean): void;
4
+ update(): void;
5
+ register_view_controller(view_controller: any): void;
6
+ set_view_controller(view_controller_name: any): void;
7
+ get_current_view_controller(): import("./ViewState").ViewState;
8
+ get(view_controller_name: any): any;
9
+ __set_view_controllers_opacities(): void;
10
+ __capitalize(string: any): any;
11
+ __snake_to_whitespace(string: any): any;
12
+ }
@@ -1,36 +1,18 @@
1
1
  export { view_manager as ViewManager };
2
2
  declare const view_manager: ViewManager;
3
3
  declare class ViewManager {
4
- views: ViewState[];
5
- transition_table: TransitionTable;
6
- transition_handler: ViewStateTransitionHandler;
7
- view_change_subscribers: any[];
4
+ views: any[];
5
+ main_to_worker: any;
8
6
  browser_title_suffix: string;
9
- before_update(): void;
10
- update(): void;
11
- fixed_update(): void;
12
7
  go_to_view(view_name: any, change_url?: boolean, skip?: boolean): void;
13
8
  go_to_scene(scene_name: any, change_url?: boolean, skip?: boolean): void;
14
- subscribe_to_view_change(subscriber: any): void;
15
- notify_view_change(view_name: any): void;
16
- register_view(view: any): void;
17
- has_view(view_name: any): boolean;
18
- add_transitions(transitions: any): void;
19
- set_transitions(transitions: any): void;
20
- set_view(view_name: any): void;
21
9
  set_browser_title_suffix(title_suffix: any): void;
22
- get_current_view(): import("./ViewState").ViewState;
23
- get_view_by_name(view_name: any): void;
24
10
  get(view_name: any): any;
25
- get_view_by_url(url: any): void;
26
11
  get_by_url(url: any): any;
27
- set_default_state_data(default_state_data: any): void;
12
+ register_view(view: any): void;
13
+ set_main_to_worker(main_to_worker: any): void;
28
14
  __change_browser_url(url: any): void;
29
15
  __change_browser_title(name: any): void;
30
- __set_views_opacities(): void;
31
16
  __capitalize(string: any): any;
32
17
  __snake_to_whitespace(string: any): any;
33
18
  }
34
- import { TransitionTable } from "./transition/TransitionTable";
35
- import { ViewStateTransitionHandler } from "./transition/ViewStateTransitionHandler";
36
- import { ViewState } from "./ViewState";
@@ -11,7 +11,6 @@ export class ViewState {
11
11
  fixed_update(): void;
12
12
  update_enter_transition(global_view_data: any, transition_progress: any, action_sequencer: any): void;
13
13
  update_exit_transition(global_view_data: any, transition_progress: any, action_sequencer: any): void;
14
- update_transition(global_view_data: any, transition_progress: any, action_sequencer: any): void;
15
14
  before_exit(): void;
16
15
  on_exit(): void;
17
16
  }
@@ -0,0 +1,8 @@
1
+ export { worker_to_main as WorkerToMain };
2
+ declare const worker_to_main: WorkerToMain;
3
+ declare class WorkerToMain {
4
+ methods: any[];
5
+ args: any[];
6
+ push(method: any, args?: any[]): void;
7
+ clear(): void;
8
+ }
@@ -1,7 +1,7 @@
1
1
  export class ActionSequencerBuilder {
2
2
  constructor(default_state_data: any);
3
3
  default_state_data: any;
4
- from_animation_sheet(animation_data: any, current_context: any, initial_context: any): ActionSequencer;
4
+ from_animation_sheet(animation_data: any, current_context: any, initial_context: any, transitions_velocity: any): ActionSequencer;
5
5
  state_to_tracks(state: any, longest_time: any): {
6
6
  attribute_name: string;
7
7
  from_time: number;
@@ -1,8 +1,10 @@
1
1
  export class TransitionTable {
2
2
  transitions: any[];
3
3
  default_state_data: {};
4
+ transitions_velocity: number;
4
5
  get(from_state_name: any, to_state_name: any, current_context: any): import("../../action_sequencer/ActionSequencer").ActionSequencer;
5
6
  add_transitions(transitions: any): void;
6
7
  set_transitions(transitions: any): void;
7
8
  set_default_state_data(default_state_data: any): void;
9
+ set_transitions_velocity(transitions_velocity: any): void;
8
10
  }
@@ -1,23 +0,0 @@
1
- /*
2
-
3
- A configuration class used as a singleton
4
-
5
- */
6
-
7
- class Configuration
8
- {
9
- init(parameters = {})
10
- {
11
- this.dpr = 1;
12
-
13
- this.app = {}; // for arbitrary use in end application
14
- }
15
-
16
- from_json(json)
17
- {
18
-
19
- }
20
- }
21
-
22
- const configuration = new Configuration();
23
- export { configuration as Configuration };
package/src/Screen.js DELETED
@@ -1,55 +0,0 @@
1
- import { OScreen } from './OScreen';
2
-
3
- class Screen
4
- {
5
- init()
6
- {
7
- console.warn('Screen Singleton is deprecated. Please use OScreen.');
8
- OScreen.init();
9
- }
10
-
11
- update_position(x, y)
12
- {
13
- console.warn('Screen Singleton is deprecated. Please use OScreen.');
14
- OScreen.update_position(x, y);
15
- }
16
-
17
- update()
18
- {
19
- console.warn('Screen Singleton is deprecated. Please use OScreen.');
20
- OScreen.update();
21
- }
22
-
23
- update_size(width, height)
24
- {
25
- console.warn('Screen Singleton is deprecated. Please use OScreen.');
26
- OScreen.update_size(width, height);
27
- }
28
-
29
- apply_pixel_density_v2(vector2)
30
- {
31
- console.warn('Screen Singleton is deprecated. Please use OScreen.');
32
- return OScreen.apply_pixel_density_v2(vector2);
33
- }
34
-
35
- apply_pixel_density(value)
36
- {
37
- console.warn('Screen Singleton is deprecated. Please use OScreen.');
38
- return OScreen.apply_pixel_density(value);
39
- }
40
-
41
- get_pixel_size()
42
- {
43
- console.warn('Screen Singleton is deprecated. Please use OScreen.');
44
- return OScreen.get_pixel_size();
45
- }
46
-
47
- get aspect_ratio()
48
- {
49
- console.warn('Screen Singleton is deprecated. Please use OScreen.');
50
- return OScreen.aspect_ratio;
51
- }
52
- }
53
-
54
- const screen = new Screen();
55
- export { screen as Screen };
@@ -1,147 +0,0 @@
1
- import { OScreen } from '../OScreen';
2
- import { RenderLayers } from '../RenderLayers';
3
-
4
- import transparent_mix_vert from '../shaders/transparent_mix/transparent_mix.vert';
5
- import transparent_mix_frag from '../shaders/transparent_mix/transparent_mix.frag';
6
- import copy_frag from '../shaders/transparent_mix/copy.frag';
7
- import fxaa from '../shaders/anti_aliasing/fxaa.frag';
8
-
9
- import { Configuration } from '../Configuration';
10
-
11
- import { Mesh } from 'three';
12
- import { WebGLRenderTarget } from 'three';
13
- import { ShaderMaterial } from 'three';
14
- import { Vector2 } from 'three';
15
- import { PlaneGeometry } from 'three';
16
- import { Scene } from 'three';
17
-
18
- class TransparencyMixRender
19
- {
20
- constructor(webgl)
21
- {
22
- this.SSAA = Configuration.use_ssaa ? 2 : 1;
23
- this.main_rt = new WebGLRenderTarget(OScreen.width * this.SSAA, OScreen.height * this.SSAA);
24
- this.opaque_rt = new WebGLRenderTarget(OScreen.width * this.SSAA, OScreen.height * this.SSAA);
25
- this.fxaa_rt = new WebGLRenderTarget(OScreen.width * this.SSAA, OScreen.height * this.SSAA);
26
-
27
- this.mix_material = new ShaderMaterial({
28
- uniforms: {
29
- _OpaqueTex: { value: this.opaque_rt.texture },
30
- _TransparentTex: { value: this.main_rt.texture },
31
- _Resolution: { value: new Vector2(OScreen.width, OScreen.height) },
32
- _Opacity: { value: Configuration.transparency_amount }
33
- },
34
- vertexShader: transparent_mix_vert,
35
- fragmentShader: transparent_mix_frag,
36
- depthTest: false,
37
- depthWrite: false
38
- });
39
-
40
- this.copy_material = new ShaderMaterial({
41
- uniforms: {
42
- _MainTex: { value: this.main_rt.texture }
43
- },
44
- vertexShader: transparent_mix_vert,
45
- fragmentShader: copy_frag,
46
- depthTest: false,
47
- depthWrite: false
48
- });
49
-
50
- this.fxaa_material = this.__get_fxaa_material();
51
-
52
- const geometry = new PlaneGeometry(1, 1);
53
- this.render_plane = new Mesh(geometry, this.mix_material);
54
- this.render_plane.frustumCulled = false;
55
-
56
- this.copy_plane = new Mesh(geometry, this.copy_material);
57
- this.copy_plane.frustumCulled = false;
58
-
59
- this.mix_scene = new Scene();
60
- this.mix_scene.add(this.render_plane);
61
- this.copy_scene = new Scene();
62
- this.copy_scene.add(this.copy_plane);
63
- }
64
-
65
- resize()
66
- {
67
- this.main_rt.setSize(OScreen.width * this.SSAA, OScreen.height * this.SSAA);
68
- this.opaque_rt.setSize(OScreen.width * this.SSAA, OScreen.height * this.SSAA);
69
- this.fxaa_rt.setSize(OScreen.width * this.SSAA, OScreen.height * this.SSAA);
70
- this.fxaa_material.uniforms._Resolution.value.set(OScreen.width * this.SSAA, OScreen.height * this.SSAA);
71
- this.mix_material.uniforms._Resolution.value.set(OScreen.width * this.SSAA, OScreen.height * this.SSAA);
72
- }
73
-
74
- __get_fxaa_material()
75
- {
76
- return new ShaderMaterial({
77
- uniforms: {
78
- _MainTex: { value: this.fxaa_rt.texture },
79
- _Resolution: { value: new Vector2(OScreen.width * this.SSAA, OScreen.height * this.SSAA) }
80
- },
81
- vertexShader: transparent_mix_vert,
82
- fragmentShader: fxaa,
83
- depthTest: false,
84
- depthWrite: false
85
- });
86
- }
87
-
88
- render(webgl)
89
- {
90
- webgl.camera.updateMatrix();
91
- webgl.camera.updateMatrixWorld();
92
-
93
- this.__render_opaque(webgl);
94
- this.__render_transparent(webgl);
95
-
96
- webgl.camera.layers.disable(RenderLayers.transparent);
97
- webgl.camera.layers.enable(RenderLayers.opaque);
98
-
99
- if (Configuration.use_fxaa)
100
- {
101
- webgl._renderer.render(this.mix_scene, webgl.camera, this.fxaa_rt, false);
102
- this.mix_scene.overrideMaterial = this.fxaa_material;
103
- webgl._renderer.render(this.mix_scene, webgl.camera, undefined, false);
104
- this.mix_scene.overrideMaterial = undefined;
105
- }
106
- else
107
- {
108
- webgl._renderer.render(this.mix_scene, webgl.camera, undefined, false);
109
- }
110
- }
111
-
112
- __render_opaque(webgl)
113
- {
114
- webgl._renderer.setClearColor(webgl.clear_color);
115
- webgl._renderer.setClearAlpha(1);
116
-
117
- webgl.camera.layers.disable(RenderLayers.transparent);
118
- webgl.camera.layers.enable(RenderLayers.opaque);
119
- webgl._renderer.clearTarget(this.main_rt, true, true, false);
120
- webgl._renderer.render(webgl.scene, webgl.camera, this.main_rt, false);
121
- webgl._renderer.render(this.copy_scene, webgl.camera, this.opaque_rt, false);
122
- }
123
-
124
- __render_transparent(webgl)
125
- {
126
- webgl._renderer.setClearColor(0x000000);
127
- webgl._renderer.setClearAlpha(0);
128
-
129
- webgl.camera.layers.disable(RenderLayers.opaque);
130
- webgl.camera.layers.enable(RenderLayers.transparent);
131
-
132
- webgl._renderer.clearTarget(this.main_rt, true, false, false);
133
- webgl._renderer.render(webgl.scene, webgl.camera, this.main_rt, false);
134
- }
135
-
136
- on_enter(webgl)
137
- {
138
- webgl._renderer.autoClear = false;
139
- }
140
-
141
- on_exit(webgl)
142
- {
143
- webgl._renderer.autoClear = true;
144
- }
145
- }
146
-
147
- export { TransparencyMixRender };
@@ -1,15 +0,0 @@
1
- class ViewContext
2
- {
3
- constructor()
4
- {
5
- this.app = undefined;
6
- }
7
-
8
- set_app(app)
9
- {
10
- this.app = app;
11
- }
12
- }
13
-
14
- const view_context = new ViewContext();
15
- export { view_context as ViewContext };
@@ -1,8 +0,0 @@
1
- export { configuration as Configuration };
2
- declare const configuration: Configuration;
3
- declare class Configuration {
4
- init(parameters?: {}): void;
5
- dpr: number;
6
- app: {};
7
- from_json(json: any): void;
8
- }
@@ -1,6 +0,0 @@
1
- export { view_context as ViewContext };
2
- declare const view_context: ViewContext;
3
- declare class ViewContext {
4
- app: any;
5
- set_app(app: any): void;
6
- }