mirror of
https://github.com/motajs/template.git
synced 2026-11-01 22:24:31 +08:00
refactor(04-16): 渲染端去单例化第二步(挂载到主类)
This commit is contained in:
1 parent
6cff48741a
commit
d306d11bce
3 files changed
+265
No files matched your search
@@ -37,6 +37,8 @@ import {
|
||||
VARIATOR_DEBUG_SPEED
|
||||
} from './shared';
|
||||
import { WebLoadStarter } from '@motajs/loader';
|
||||
import { IRendererUsing, RendererUsing } from '@motajs/render-vue';
|
||||
import { UIController } from '@motajs/system';
|
||||
|
||||
export class ClientCore extends CoreState implements IClientCore {
|
||||
// Layer 4 渲染基础层
|
||||
@@ -48,8 +50,11 @@ export class ClientCore extends CoreState implements IClientCore {
|
||||
readonly rafExcitation: IExcitation<number>;
|
||||
readonly excitationDivider: IExcitationDivider<number>;
|
||||
readonly renderer: IRenderTreeRoot;
|
||||
readonly using: IRendererUsing;
|
||||
readonly mainMapRenderer: IMapRenderer;
|
||||
readonly mainMapExtension: IMapExtensionManager;
|
||||
readonly sceneController: UIController;
|
||||
readonly mainUIController: UIController;
|
||||
|
||||
readonly audioContext: IMotaAudioContext;
|
||||
readonly soundPlayer: ISoundPlayer<SoundIds>;
|
||||
@@ -112,8 +117,11 @@ export class ClientCore extends CoreState implements IClientCore {
|
||||
// 使用分频器,用户可以在设置中调整,如果设备性能较差调高分频有助于提高性能表现
|
||||
excitaion: excitationDivider
|
||||
});
|
||||
this.using = new RendererUsing(this.renderer);
|
||||
this.mainMapRenderer = new MapRenderer(this.materials);
|
||||
this.mainMapExtension = new MapExtensionManager(this.mainMapRenderer);
|
||||
this.sceneController = new UIController('main-scene');
|
||||
this.mainUIController = new UIController('main-ui');
|
||||
|
||||
//#endregion
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
import { IClientSystem } from '@user/client-system';
|
||||
import { IMapExtensionManager, IMapRenderer } from '@user/client-base';
|
||||
import { IRendererUsing } from '@motajs/render-vue';
|
||||
import { UIController } from '@motajs/system';
|
||||
|
||||
export interface IClientCoreConfig {
|
||||
/** 渲染端数据配置文件路径,相对于 `src/content` */
|
||||
@@ -17,4 +19,10 @@ export interface IClientCore extends IClientSystem {
|
||||
// readonly expandMapRenderer: IMapRenderer;
|
||||
/** 主地图渲染器的拓展管理对象 */
|
||||
readonly mainMapExtension: IMapExtensionManager;
|
||||
/** 渲染器使用对象,供组件内注册渲染激励与事件监听 */
|
||||
readonly using: IRendererUsing;
|
||||
/** 主场景的 UI 控制器,管理游戏主场景的 UI 显示 */
|
||||
readonly sceneController: UIController;
|
||||
/** 主界面的 UI 控制器,管理游戏主界面的 UI 显示 */
|
||||
readonly mainUIController: UIController;
|
||||
}
|
||||
Reference in new issue
Block a user