Skip to content

Commit

Permalink
fix: adopt new version registering api
Browse files Browse the repository at this point in the history
  • Loading branch information
kyasbal committed Dec 17, 2017
1 parent 47a2a39 commit ee28ba6
Show file tree
Hide file tree
Showing 12 changed files with 83 additions and 79 deletions.
4 changes: 2 additions & 2 deletions src/Components/CameraComponent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -144,13 +144,13 @@ export default class CameraComponent extends Component {
this._recalculateProjection();
this.transform = this.node.getComponent(Transform);
this.containedScene = this.node.getComponentInAncestor(Scene);
this.containedScene.queueRegistory.registerQueue(this._renderQueue);
this.containedScene.queueRegistry.registerQueue(this._renderQueue);
this.node.on("transformUpdated", this.updateTransform.bind(this));
this.updateTransform();
}

protected $unmount(): void {
this.containedScene.queueRegistory.unregisterQueue(this._renderQueue);
this.containedScene.queueRegistry.unregisterQueue(this._renderQueue);
this.containedScene = null;
}

Expand Down
4 changes: 2 additions & 2 deletions src/Components/GeometryComponent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import Component from "grimoirejs/ref/Core/Component";
import IAttributeDeclaration from "grimoirejs/ref/Interface/IAttributeDeclaration";
import Geometry from "../Geometry/Geometry";
import GeometryFactory from "../Geometry/GeometryFactory";
import GeometryRegistory from "./GeometryRegistoryComponent";
import GeometryRegistry from "./GeometryRegistryComponent";
/**
* ジオメトリを生成するためのコンポーネント
* `type`属性に指定されたタイプのジオメトリを生成して、`name`属性に指定された名前で利用できる形にして登録します。
Expand Down Expand Up @@ -47,7 +47,7 @@ export default class GeometryComponent extends Component {
geometryArgument[key] = this.getAttribute(key);
}
const generator = gf.instanciate(type, geometryArgument);
const gr = this.companion.get("GeometryRegistory") as GeometryRegistory;
const gr = this.companion.get("GeometryRegistry") as GeometryRegistry;
const name = this.getAttribute("name");
if (!name) {
throw new Error("Name was not specified");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import GeometryFactory from "../Geometry/GeometryFactory";
* ジオメトリを管理するコンポーネント
* あまりユーザーが直接操作することはありません。
*/
export default class GeometryRegistoryComponent extends Component {
export default class GeometryRegistryComponent extends Component {
public static componentName = "GeometryRegistry";
public static attributes: { [key: string]: IAttributeDeclaration } = {
/**
Expand Down
4 changes: 2 additions & 2 deletions src/Components/MeshRendererComponent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -113,11 +113,11 @@ export default class MeshRenderer extends Component implements IRenderable {
this._transformComponent = this.node.getComponent(Transform);
this._materialContainer = this.node.getComponent(MaterialContainer);
this._containedScene = MeshRenderer._findContainedScene(this.node);
this._containedScene.queueRegistory.addRenderable(this);
this._containedScene.queueRegistry.addRenderable(this);
}

protected $unmount(): void {
this._containedScene.queueRegistory.removeRenderable(this);
this._containedScene.queueRegistry.removeRenderable(this);
}

public render(args: IRenderArgument): void {
Expand Down
2 changes: 1 addition & 1 deletion src/Components/RenderStage/RenderHitareaComponent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ export default class RenderHitareaComponent extends SingleBufferRenderStageBase
}
this._lastRenderable = null;
} else {
const r = camera.containedScene.queueRegistory.getByIndex(index - 1);
const r = camera.containedScene.queueRegistry.getByIndex(index - 1);
if (this._lastRenderable !== r) {
if (this._lastRenderable instanceof Component) {
this._lastRenderable.node.emit("mouseleave", this._lastRenderable);
Expand Down
4 changes: 2 additions & 2 deletions src/Components/RenderStage/RenderQuadComponent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import IAttributeDeclaration from "grimoirejs/ref/Interface/IAttributeDeclaratio
import Geometry from "../../Geometry/Geometry";
import IMaterialArgument from "../../Material/IMaterialArgument";
import IRenderRendererMessage from "../../Messages/IRenderRendererMessage";
import GeometryRegistoryComponent from "../GeometryRegistoryComponent";
import GeometryRegistryComponent from "../GeometryRegistryComponent";
import MaterialContainer from "../MaterialContainerComponent";
import SingleBufferRenderStageBase from "./SingleBufferRenderStageBase";
export default class RenderQuadComponent extends SingleBufferRenderStageBase {
Expand Down Expand Up @@ -42,7 +42,7 @@ export default class RenderQuadComponent extends SingleBufferRenderStageBase {
public async $mount(): Promise<void> {
this._gl = this.companion.get("gl");
this._materialContainer = this.node.getComponent(MaterialContainer);
const geometryRegistry = this.companion.get("GeometryRegistory") as GeometryRegistoryComponent;
const geometryRegistry = this.companion.get("GeometryRegistry") as GeometryRegistryComponent;
this._geom = await geometryRegistry.getGeometry("quad");
}

Expand Down
2 changes: 1 addition & 1 deletion src/Components/SceneComponent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ export default class Scene extends HierarchycalComponentBase {

public sceneDescription: { [key: string]: any };

public queueRegistory: RenderQueueRegistry = new RenderQueueRegistry();
public queueRegistry: RenderQueueRegistry = new RenderQueueRegistry();

/**
* The index of loop executed last time.
Expand Down
6 changes: 3 additions & 3 deletions src/Converters/GeometryConverter.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import Attribute from "grimoirejs/ref/Core/Attribute";
import GeometryRegistory from "../Components/GeometryRegistoryComponent";
import GeometryRegistry from "../Components/GeometryRegistryComponent";
import Geometry from "../Geometry/Geometry";

/**
Expand All @@ -8,8 +8,8 @@ import Geometry from "../Geometry/Geometry";
*/
export default function GeometryConverter(val: any, attr: Attribute): any {
if (typeof val === "string") {
const registory = attr.companion.get("GeometryRegistory") as GeometryRegistory;
return registory.getGeometry(val);
const Registry = attr.companion.get("GeometryRegistry") as GeometryRegistry;
return Registry.getGeometry(val);
} else if (val instanceof Geometry) {
return Promise.resolve(val);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import DefaultMacro from "./Defaults/DefaultMacro";
/**
* Manage macros which would be appended head of all shaders grimoire.js would load.
*/
export default class MacroRegistory {
export default class MacroRegistry {

/**
* The map of macro.
Expand Down
14 changes: 7 additions & 7 deletions src/Material/MaterialFactory.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import NameResolver from "../Asset/NameResolver";
import TextFileResolver from "../Asset/TextFileResolver";
import GLRelatedRegistryBase from "../Resource/GLRelatedRegistryBase";
import SortParser from "../Sort/Parser";
import MacroRegistory from "./MacroRegistory";
import MacroRegistry from "./MacroRegistry";
import Material from "./Material";
/**
* Manage materialGenerators for materials.
Expand Down Expand Up @@ -37,7 +37,7 @@ export default class MaterialFactory extends GLRelatedRegistryBase {
* @return {Promise<void>} [description]
*/
public static async addSORTMaterial(typeName: string, source: string): Promise<(factory: MaterialFactory) => Material> {
return this.materialGeneratorResolver.register(typeName, (async() => {
return this.materialGeneratorResolver.register(typeName, (async () => {
const techniques = await SortParser.parse(source);
return (factory) => {
return new Material(factory.gl, techniques);
Expand All @@ -52,7 +52,7 @@ export default class MaterialFactory extends GLRelatedRegistryBase {
* @return {Promise<void>} [description]
*/
public static addSORTMaterialFromURL(typeName: string, url: string): Promise<(factory: MaterialFactory) => Material> {
return this.materialGeneratorResolver.register(typeName, (async() => {
return this.materialGeneratorResolver.register(typeName, (async () => {
const source = await TextFileResolver.resolve(url);
const techniques = await SortParser.parse(source);
return (factory) => {
Expand All @@ -61,21 +61,21 @@ export default class MaterialFactory extends GLRelatedRegistryBase {
})());
}

public static getMaterialStatus(typeName: string): number{
public static getMaterialStatus(typeName: string): number {
return this.materialGeneratorResolver.getStatus(typeName);
}

public shaderHeader: string = MaterialFactory.defaultShaderHeader;

public macro: MacroRegistory;
public macro: MacroRegistry;

constructor(public gl: WebGLRenderingContext) {
super();
this.macro = new MacroRegistory();
this.macro = new MacroRegistry();
}

public async instanciate(typeName: string): Promise<Material> {
const generator = await MaterialFactory.materialGeneratorResolver.get(typeName);
const generator = await MaterialFactory.materialGeneratorResolver.get(typeName);
return generator(this);
}
}
116 changes: 60 additions & 56 deletions src/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import CubemapCameraComponent from "./Components/CubemapCameraComponent";
import CubeRenderingTargetComponent from "./Components/CubeRenderingTargetComponent";
import Fullscreen from "./Components/FullscreenComponent";
import GeometryComponent from "./Components/GeometryComponent";
import GeometryRegistoryComponent from "./Components/GeometryRegistoryComponent";
import GeometryRegistryComponent from "./Components/GeometryRegistryComponent";
import LoopManager from "./Components/LoopManagerComponent";
import Material from "./Components/MaterialComponent";
import MaterialContainer from "./Components/MaterialContainerComponent";
Expand Down Expand Up @@ -45,42 +45,46 @@ import RenderingTargetConverter from "./Converters/RenderingTargetConverter";
import TextureConverter from "./Converters/TextureConverter";
import TextureCubeConverter from "./Converters/TextureCubeConverter";
import ViewportConverter from "./Converters/ViewportConverter";
import MeshRenderer from "./Components/MeshRendererComponent";
import Geometry from "./Geometry/Geometry";
import MaterialComponent from "./Components/MaterialComponent";
import RenderHitareaComponent from "./Components/RenderStage/RenderHitareaComponent";

export default () => {
GrimoireInterface.register(async () => {
GrimoireInterface.registerComponent("AssetLoadingManager", AssetLoadingManagerComponent);
GrimoireInterface.registerComponent("Camera", CameraComponent);
GrimoireInterface.registerComponent("CubemapCamera", CubemapCameraComponent);
GrimoireInterface.registerComponent("CanvasInitializer", CanvasInitializerComponent);
GrimoireInterface.registerComponent("Fullscreen", Fullscreen);
GrimoireInterface.registerComponent("Geometry", GeometryComponent);
GrimoireInterface.registerComponent("GeometryRegistory", GeometryRegistoryComponent);
GrimoireInterface.registerComponent("LoopManager", LoopManager);
GrimoireInterface.registerComponent("Material", Material);
GrimoireInterface.registerComponent("MaterialContainer", MaterialContainer);
GrimoireInterface.registerComponent("MaterialImporter", MaterialImporter);
GrimoireInterface.registerComponent("MeshRenderer", MeshRendererComponent);
GrimoireInterface.registerComponent("MouseCameraControl", MouseCameraControlComponent);
GrimoireInterface.registerComponent("RenderBufferUpdator", RenderBufferUpdator);
GrimoireInterface.registerComponent("Renderer", RendererComponent);
GrimoireInterface.registerComponent("RendererManager", RendererManager);
GrimoireInterface.registerComponent("RenderQuad", RenderQuadComponent);
GrimoireInterface.registerComponent("RenderCubemap", RenderCubemapComponent);
GrimoireInterface.registerComponent("RenderScene", RenderSceneComponent);
GrimoireInterface.registerComponent("Scene", Scene);
GrimoireInterface.registerComponent("ColorBufferTextureUpdator", ColorBufferTextureUpdator);
GrimoireInterface.registerComponent("ColorBufferTextureCubeUpdator", ColorBufferTextureCubeUpdator);
GrimoireInterface.registerComponent("TextureContainer", TextureContainer);
GrimoireInterface.registerComponent("TextureCubeContainer", TextureCubeContainer);
GrimoireInterface.registerComponent("Transform", Transform);
GrimoireInterface.registerComponent("RenderHitArea", RenderHitArea);
GrimoireInterface.registerComponent("ImageTextureUpdator", ImageTextureUpdator);
GrimoireInterface.registerComponent("VideoTextureUpdator", VideoTextureUpdator);
GrimoireInterface.registerComponent("ViewportSizeResourceResizer", ViewportSizeResourceResizer);
GrimoireInterface.registerComponent("ConstantSizeResourceResizer", ConstantSizeResourceResizer);
GrimoireInterface.registerComponent("RenderingTarget", RenderingTarget);
GrimoireInterface.registerComponent("CubeRenderingTarget", CubeRenderingTargetComponent);
GrimoireInterface.registerComponent("BasicComponent", BasicComponent);
GrimoireInterface.registerComponent(AssetLoadingManagerComponent);
GrimoireInterface.registerComponent(CameraComponent);
GrimoireInterface.registerComponent(CubemapCameraComponent);
GrimoireInterface.registerComponent(CanvasInitializerComponent);
GrimoireInterface.registerComponent(Fullscreen);
GrimoireInterface.registerComponent(GeometryComponent);
GrimoireInterface.registerComponent(GeometryRegistryComponent);
GrimoireInterface.registerComponent(LoopManager);
GrimoireInterface.registerComponent(Material);
GrimoireInterface.registerComponent(MaterialContainer);
GrimoireInterface.registerComponent(MaterialImporter);
GrimoireInterface.registerComponent(MeshRendererComponent);
GrimoireInterface.registerComponent(MouseCameraControlComponent);
GrimoireInterface.registerComponent(RenderBufferUpdator);
GrimoireInterface.registerComponent(RendererComponent);
GrimoireInterface.registerComponent(RendererManager);
GrimoireInterface.registerComponent(RenderQuadComponent);
GrimoireInterface.registerComponent(RenderCubemapComponent);
GrimoireInterface.registerComponent(RenderSceneComponent);
GrimoireInterface.registerComponent(Scene);
GrimoireInterface.registerComponent(ColorBufferTextureUpdator);
GrimoireInterface.registerComponent(ColorBufferTextureCubeUpdator);
GrimoireInterface.registerComponent(TextureContainer);
GrimoireInterface.registerComponent(TextureCubeContainer);
GrimoireInterface.registerComponent(Transform);
GrimoireInterface.registerComponent(RenderHitArea);
GrimoireInterface.registerComponent(ImageTextureUpdator);
GrimoireInterface.registerComponent(VideoTextureUpdator);
GrimoireInterface.registerComponent(ViewportSizeResourceResizer);
GrimoireInterface.registerComponent(ConstantSizeResourceResizer);
GrimoireInterface.registerComponent(RenderingTarget);
GrimoireInterface.registerComponent(CubeRenderingTargetComponent);
GrimoireInterface.registerComponent(BasicComponent);

GrimoireInterface.registerConverter("CanvasSize", CanvasSizeConverter);
GrimoireInterface.registerConverter("Geometry", GeometryConverter);
Expand All @@ -95,48 +99,48 @@ export default () => {
GrimoireInterface.registerConverter(PositionConverter);
GrimoireInterface.registerConverter("RenderingTarget", RenderingTargetConverter);

GrimoireInterface.registerNode("goml", ["CanvasInitializer", "LoopManager", "AssetLoadingManager", "GeometryRegistory", "RendererManager", "Fullscreen"]);
GrimoireInterface.registerNode("scene", ["Scene"]);
GrimoireInterface.registerNode("object", ["Transform"]);
GrimoireInterface.registerNode("camera", ["Camera"], { position: "0,0,10" }, "object");
GrimoireInterface.registerNode("cube-camera", ["CubemapCamera"], {
GrimoireInterface.registerNode("goml", [CanvasInitializerComponent, LoopManager, AssetLoadingManagerComponent, GeometryRegistryComponent, RendererManager, Fullscreen]);
GrimoireInterface.registerNode("scene", [Scene]);
GrimoireInterface.registerNode("object", [Transform]);
GrimoireInterface.registerNode("camera", [CameraComponent], { position: "0,0,10" }, "object");
GrimoireInterface.registerNode("cube-camera", [CubemapCameraComponent], {
aspect: 1,
autoAspect: false,
fovy: "90d",
}, "object", ["aspect", "autoAspect"]);
GrimoireInterface.registerNode("mesh", ["MaterialContainer", "MeshRenderer"], {}, "object");
GrimoireInterface.registerNode("mesh", [MaterialContainer, MeshRenderer], {}, "object");
GrimoireInterface.registerNode("skybox", [], {
geometry: "quad",
material: "new(skybox)",
}, "mesh");
GrimoireInterface.registerNode("renderer", ["Renderer"]);
GrimoireInterface.registerNode("geometry", ["Geometry"]);
GrimoireInterface.registerNode("texture", ["TextureContainer"]);
GrimoireInterface.registerNode("texture-cube", ["TextureCubeContainer"]);
GrimoireInterface.registerNode("image-texture", ["ImageTextureUpdator"], {}, "texture");
GrimoireInterface.registerNode("video-texture", ["VideoTextureUpdator"], {}, "texture");
GrimoireInterface.registerNode("material", ["Material"]);
GrimoireInterface.registerNode("import-material", ["MaterialImporter"]);
GrimoireInterface.registerNode("color-buffer", ["ColorBufferTextureUpdator"], {
GrimoireInterface.registerNode("renderer", [RendererComponent]);
GrimoireInterface.registerNode("geometry", [GeometryComponent]);
GrimoireInterface.registerNode("texture", [TextureContainer]);
GrimoireInterface.registerNode("texture-cube", [TextureCubeContainer]);
GrimoireInterface.registerNode("image-texture", [ImageTextureUpdator], {}, "texture");
GrimoireInterface.registerNode("video-texture", [VideoTextureUpdator], {}, "texture");
GrimoireInterface.registerNode("material", [MaterialComponent]);
GrimoireInterface.registerNode("import-material", [MaterialImporter]);
GrimoireInterface.registerNode("color-buffer", [ColorBufferTextureUpdator], {
resizerType: "ViewportSize",
}, "texture");
GrimoireInterface.registerNode("color-buffer-cube", ["ColorBufferTextureCubeUpdator"], {
GrimoireInterface.registerNode("color-buffer-cube", [ColorBufferTextureCubeUpdator], {
resizerType: "ViewportSize",
}, "texture-cube");
GrimoireInterface.registerNode("render-buffer", ["RenderBufferUpdator"], {
GrimoireInterface.registerNode("render-buffer", [RenderBufferUpdator], {
resizerType: "ViewportSize",
});
GrimoireInterface.registerNode("render-scene", ["RenderScene", "RenderHitArea"], {
GrimoireInterface.registerNode("render-scene", [RenderSceneComponent, RenderHitareaComponent], {
material: null,
});
GrimoireInterface.registerNode("render-cubemap", ["RenderCubemap"], {
GrimoireInterface.registerNode("render-cubemap", [RenderCubemapComponent], {
material: null,
});
GrimoireInterface.registerNode("render-quad", ["MaterialContainer", "RenderQuad"], {
GrimoireInterface.registerNode("render-quad", [MaterialContainer, RenderQuadComponent], {
material: null,
});
GrimoireInterface.registerNode("rendering-target", ["RenderingTarget"]);
GrimoireInterface.registerNode("cube-rendering-target", ["CubeRenderingTarget"]);
GrimoireInterface.registerNode("rendering-target", [RenderingTarget]);
GrimoireInterface.registerNode("cube-rendering-target", [CubeRenderingTargetComponent]);
DefaultPrimitives.register();
DefaultMaterial.register();
GLExtRequestor.request("OES_texture_float");
Expand Down
Loading

0 comments on commit ee28ba6

Please sign in to comment.