Skip to content

Commit

Permalink
Merge pull request #1246 from actnwit/refactor/sampler
Browse files Browse the repository at this point in the history
refactor: sampler
  • Loading branch information
emadurandal authored Mar 24, 2023
2 parents 711e95b + 03fa430 commit 1474297
Show file tree
Hide file tree
Showing 214 changed files with 90,601 additions and 163,123 deletions.
1 change: 1 addition & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
"devcontainer",
"effekseer",
"eqeqeq",
"esmdev",
"esmodule",
"fovy",
"fxaa",
Expand Down
2 changes: 1 addition & 1 deletion config/webpack/webpack.config.base.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ module.exports = {
{
test: /\.ts$/,
exclude: [/node_modules/],
loader: 'swc-loader',
loader: 'ts-loader',
},
],
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ import { MeshComponent } from '../Mesh/MeshComponent';
import { ProcessApproachEnum } from '../../definitions/ProcessApproach';
import { ProcessStageEnum } from '../../definitions/ProcessStage';
import { EntityRepository } from '../../core/EntityRepository';
import { SceneGraphComponent } from '../SceneGraph/SceneGraphComponent';
import { CameraComponent } from '../Camera/CameraComponent';
import { CubeTexture } from '../../textures/CubeTexture';
import { RenderPass } from '../../renderer/RenderPass';
Expand Down Expand Up @@ -53,5 +52,5 @@ export declare class MeshRendererComponent extends Component {
* @param base the target entity
* @param _componentClass the component class to add
*/
addThisComponentToEntity<EntityBase extends IEntity, SomeComponentClass extends typeof Component>(base: EntityBase, _componentClass: SomeComponentClass): (SomeComponentClass extends typeof import("../Vrm/VrmComponent").VrmComponent ? import("../Vrm/IVrmEntity").IVrmEntityMethods : Exclude<SomeComponentClass extends typeof import("../../..").EffekseerComponent ? import("../../..").IEffekseerEntityMethods : Exclude<SomeComponentClass extends typeof import("../Physics/PhysicsComponent").PhysicsComponent ? import("../Physics/IPhysicsEntity").IPhysicsEntityMethods : Exclude<SomeComponentClass extends typeof import("../BlendShape/BlendShapeComponent").BlendShapeComponent ? import("../BlendShape/IBlendShapeEntity").IBlendShapeEntityMethods : Exclude<SomeComponentClass extends typeof import("../Skeletal/SkeletalComponent").SkeletalComponent ? import("../Skeletal/ISkeletalEntity").ISkeletalEntityMethods : Exclude<SomeComponentClass extends typeof import("../Light/LightComponent").LightComponent ? import("../Light/ILightEntity").ILightEntityMethods : Exclude<SomeComponentClass extends typeof CameraComponent ? import("../Camera/ICameraEntity").ICameraEntityMethods : Exclude<SomeComponentClass extends typeof import("../CameraController/CameraControllerComponent").CameraControllerComponent ? import("../CameraController/ICameraControllerEntity").ICameraControllerEntityMethods : Exclude<SomeComponentClass extends typeof MeshRendererComponent ? import("./IMeshRendererEntity").IMeshRendererEntityMethods : Exclude<SomeComponentClass extends typeof MeshComponent ? import("../Mesh/IMeshEntity").IMeshEntityMethods : Exclude<SomeComponentClass extends typeof SceneGraphComponent ? import("../SceneGraph/ISceneGraphEntity").ISceneGraphEntityMethods : Exclude<SomeComponentClass extends typeof import("../Transform/TransformComponent").TransformComponent ? import("../Transform/ITransformEntity").ITransformEntityMethods : Exclude<SomeComponentClass extends typeof import("../Animation/AnimationComponent").AnimationComponent ? import("../Animation/IAnimationEntity").IAnimationEntityMethods : import("../Transform/ITransformEntity").ITransformEntityMethods | import("../SceneGraph/ISceneGraphEntity").ISceneGraphEntityMethods | import("../Light/ILightEntity").ILightEntityMethods | import("../Mesh/IMeshEntity").IMeshEntityMethods | import("./IMeshRendererEntity").IMeshRendererEntityMethods | import("../Camera/ICameraEntity").ICameraEntityMethods | import("../CameraController/ICameraControllerEntity").ICameraControllerEntityMethods | import("../Skeletal/ISkeletalEntity").ISkeletalEntityMethods | import("../BlendShape/IBlendShapeEntity").IBlendShapeEntityMethods | import("../Physics/IPhysicsEntity").IPhysicsEntityMethods | import("../../..").IEffekseerEntityMethods | import("../Vrm/IVrmEntity").IVrmEntityMethods, import("../Transform/ITransformEntity").ITransformEntityMethods>, import("../SceneGraph/ISceneGraphEntity").ISceneGraphEntityMethods>, import("../Mesh/IMeshEntity").IMeshEntityMethods>, import("./IMeshRendererEntity").IMeshRendererEntityMethods>, import("../CameraController/ICameraControllerEntity").ICameraControllerEntityMethods>, import("../Camera/ICameraEntity").ICameraEntityMethods>, import("../Light/ILightEntity").ILightEntityMethods>, import("../Skeletal/ISkeletalEntity").ISkeletalEntityMethods>, import("../BlendShape/IBlendShapeEntity").IBlendShapeEntityMethods>, import("../Physics/IPhysicsEntity").IPhysicsEntityMethods>, import("../../..").IEffekseerEntityMethods>, import("../Vrm/IVrmEntity").IVrmEntityMethods>) & EntityBase;
addThisComponentToEntity<EntityBase extends IEntity, SomeComponentClass extends typeof Component>(base: EntityBase, _componentClass: SomeComponentClass): (SomeComponentClass extends typeof import("../Vrm/VrmComponent").VrmComponent ? import("../Vrm/IVrmEntity").IVrmEntityMethods : Exclude<SomeComponentClass extends typeof import("../../..").EffekseerComponent ? import("../../..").IEffekseerEntityMethods : Exclude<SomeComponentClass extends typeof import("../Physics/PhysicsComponent").PhysicsComponent ? import("../Physics/IPhysicsEntity").IPhysicsEntityMethods : Exclude<SomeComponentClass extends typeof import("../BlendShape/BlendShapeComponent").BlendShapeComponent ? import("../BlendShape/IBlendShapeEntity").IBlendShapeEntityMethods : Exclude<SomeComponentClass extends typeof import("../Skeletal/SkeletalComponent").SkeletalComponent ? import("../Skeletal/ISkeletalEntity").ISkeletalEntityMethods : Exclude<SomeComponentClass extends typeof import("../Light/LightComponent").LightComponent ? import("../Light/ILightEntity").ILightEntityMethods : Exclude<SomeComponentClass extends typeof CameraComponent ? import("../Camera/ICameraEntity").ICameraEntityMethods : Exclude<SomeComponentClass extends typeof import("../CameraController/CameraControllerComponent").CameraControllerComponent ? import("../CameraController/ICameraControllerEntity").ICameraControllerEntityMethods : Exclude<SomeComponentClass extends typeof MeshRendererComponent ? import("./IMeshRendererEntity").IMeshRendererEntityMethods : Exclude<SomeComponentClass extends typeof MeshComponent ? import("../Mesh/IMeshEntity").IMeshEntityMethods : Exclude<SomeComponentClass extends typeof import("../SceneGraph/SceneGraphComponent").SceneGraphComponent ? import("../SceneGraph/ISceneGraphEntity").ISceneGraphEntityMethods : Exclude<SomeComponentClass extends typeof import("../Transform/TransformComponent").TransformComponent ? import("../Transform/ITransformEntity").ITransformEntityMethods : Exclude<SomeComponentClass extends typeof import("../Animation/AnimationComponent").AnimationComponent ? import("../Animation/IAnimationEntity").IAnimationEntityMethods : import("../Transform/ITransformEntity").ITransformEntityMethods | import("../SceneGraph/ISceneGraphEntity").ISceneGraphEntityMethods | import("../Light/ILightEntity").ILightEntityMethods | import("../Mesh/IMeshEntity").IMeshEntityMethods | import("./IMeshRendererEntity").IMeshRendererEntityMethods | import("../Camera/ICameraEntity").ICameraEntityMethods | import("../CameraController/ICameraControllerEntity").ICameraControllerEntityMethods | import("../Skeletal/ISkeletalEntity").ISkeletalEntityMethods | import("../BlendShape/IBlendShapeEntity").IBlendShapeEntityMethods | import("../Physics/IPhysicsEntity").IPhysicsEntityMethods | import("../../..").IEffekseerEntityMethods | import("../Vrm/IVrmEntity").IVrmEntityMethods, import("../Transform/ITransformEntity").ITransformEntityMethods>, import("../SceneGraph/ISceneGraphEntity").ISceneGraphEntityMethods>, import("../Mesh/IMeshEntity").IMeshEntityMethods>, import("./IMeshRendererEntity").IMeshRendererEntityMethods>, import("../CameraController/ICameraControllerEntity").ICameraControllerEntityMethods>, import("../Camera/ICameraEntity").ICameraEntityMethods>, import("../Light/ILightEntity").ILightEntityMethods>, import("../Skeletal/ISkeletalEntity").ISkeletalEntityMethods>, import("../BlendShape/IBlendShapeEntity").IBlendShapeEntityMethods>, import("../Physics/IPhysicsEntity").IPhysicsEntityMethods>, import("../../..").IEffekseerEntityMethods>, import("../Vrm/IVrmEntity").IVrmEntityMethods>) & EntityBase;
}
8 changes: 6 additions & 2 deletions dist/cjs/foundation/geometry/Frustum.d.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import { Vector4 } from '../math/Vector4';
import { Matrix44 } from '../math/Matrix44';
import { MutableVector4 } from '../math/MutableVector4';
import { MeshComponent } from '../components';
import { Index } from '../../types';
import { MeshComponent } from '../components/Mesh/MeshComponent';
import { Index } from '../../types/CommonTypes';
/**
* The view frustum class.
*/
Expand All @@ -14,6 +15,9 @@ export declare class Frustum {
zFar: MutableVector4;
private __updated;
private __vp;
private __invProjMat;
private __invViewMat;
corners: Vector4[];
constructor();
/**
* Updates this view frustum data from the view and projection matrices.
Expand Down
19 changes: 8 additions & 11 deletions dist/cjs/foundation/helpers/MaterialHelper.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,11 @@ import { Count } from '../../types/CommonTypes';
import { ShaderityObject } from 'shaderity';
import { IMeshRendererEntityMethods } from '../components/MeshRenderer/IMeshRendererEntity';
import { Vrm0xMaterialProperty } from '../../types';
import { Sampler } from '../textures/Sampler';
declare function createMaterial(materialName: string, materialNode?: AbstractMaterialContent, maxInstancesNumber?: Count): Material;
declare function recreateMaterial(materialName: string, materialNode?: AbstractMaterialContent, maxInstancesNumber?: Count): Material;
declare function createEmptyMaterial(): Material;
declare function createPbrUberMaterial({ additionalName, isMorphing, isSkinning, isLighting, isClearCoat, isTransmission, isVolume, isSheen, isSpecular, isIridescence, isShadow, useTangentAttribute, useNormalTexture, alphaMode, maxInstancesNumber, }?: {
declare function createPbrUberMaterial({ additionalName, isMorphing, isSkinning, isLighting, isClearCoat, isTransmission, isVolume, isSheen, isSpecular, isIridescence, isShadow, useTangentAttribute, useNormalTexture, maxInstancesNumber, }?: {
additionalName?: string | undefined;
isMorphing?: boolean | undefined;
isSkinning?: boolean | undefined;
Expand All @@ -26,30 +27,26 @@ declare function createPbrUberMaterial({ additionalName, isMorphing, isSkinning,
isShadow?: boolean | undefined;
useTangentAttribute?: boolean | undefined;
useNormalTexture?: boolean | undefined;
alphaMode?: import("../definitions/AlphaMode").AlphaModeEnum | undefined;
maxInstancesNumber?: number | undefined;
}): Material;
declare function createClassicUberMaterial({ additionalName, isSkinning, isLighting, isMorphing, isShadow, alphaMode, maxInstancesNumber, }?: {
declare function createClassicUberMaterial({ additionalName, isSkinning, isLighting, isMorphing, isShadow, maxInstancesNumber, }?: {
additionalName?: string | undefined;
isSkinning?: boolean | undefined;
isLighting?: boolean | undefined;
isMorphing?: boolean | undefined;
isShadow?: boolean | undefined;
alphaMode?: import("../definitions/AlphaMode").AlphaModeEnum | undefined;
maxInstancesNumber?: number | undefined;
}): Material;
declare function createDepthMomentEncodeMaterial({ additionalName, isSkinning, isMorphing, alphaMode, maxInstancesNumber, }?: {
declare function createDepthMomentEncodeMaterial({ additionalName, isSkinning, isMorphing, maxInstancesNumber, }?: {
additionalName?: string | undefined;
isSkinning?: boolean | undefined;
isMorphing?: boolean | undefined;
alphaMode?: import("../definitions/AlphaMode").AlphaModeEnum | undefined;
maxInstancesNumber?: number | undefined;
}): Material;
declare function createFlatMaterial({ additionalName, isSkinning, isMorphing, alphaMode, maxInstancesNumber, }?: {
declare function createFlatMaterial({ additionalName, isSkinning, isMorphing, maxInstancesNumber, }?: {
additionalName?: string | undefined;
isSkinning?: boolean | undefined;
isMorphing?: boolean | undefined;
alphaMode?: import("../definitions/AlphaMode").AlphaModeEnum | undefined;
maxInstancesNumber?: number | undefined;
}): Material;
declare function createEnvConstantMaterial({ additionalName, maxInstancesNumber, makeOutputSrgb, }?: {
Expand Down Expand Up @@ -138,7 +135,7 @@ declare function createEntityUIDOutputMaterial({ additionalName, maxInstancesNum
additionalName?: string | undefined;
maxInstancesNumber?: number | undefined;
}): Material;
declare function createMToonMaterial({ additionalName, isMorphing, isSkinning, isLighting, useTangentAttribute, isOutline, materialProperties, textures, debugMode, maxInstancesNumber, makeOutputSrgb, }: {
declare function createMToonMaterial({ additionalName, isMorphing, isSkinning, isLighting, useTangentAttribute, isOutline, materialProperties, textures, samplers, debugMode, maxInstancesNumber, makeOutputSrgb, }: {
additionalName?: string;
isMorphing?: boolean;
isSkinning?: boolean;
Expand All @@ -147,16 +144,16 @@ declare function createMToonMaterial({ additionalName, isMorphing, isSkinning, i
isOutline?: boolean;
materialProperties?: Vrm0xMaterialProperty;
textures?: any[];
samplers?: Sampler[];
debugMode?: any;
maxInstancesNumber?: Count;
makeOutputSrgb?: boolean;
}): Material;
declare function recreateCustomMaterial(vertexShaderStr: string, pixelShaderStr: string, { additionalName, isSkinning, isLighting, isMorphing, alphaMode, maxInstancesNumber, }?: {
declare function recreateCustomMaterial(vertexShaderStr: string, pixelShaderStr: string, { additionalName, isSkinning, isLighting, isMorphing, maxInstancesNumber, }?: {
additionalName?: string | undefined;
isSkinning?: boolean | undefined;
isLighting?: boolean | undefined;
isMorphing?: boolean | undefined;
alphaMode?: import("../definitions/AlphaMode").AlphaModeEnum | undefined;
maxInstancesNumber?: number | undefined;
}): Material;
declare function recreateShaderityMaterial(vertexShaderityObj: ShaderityObject, pixelShaderityObj: ShaderityObject, { additionalName, maxInstancesNumber }?: {
Expand Down
13 changes: 2 additions & 11 deletions dist/cjs/foundation/helpers/RenderableHelper.d.ts
Original file line number Diff line number Diff line change
@@ -1,27 +1,18 @@
import { FrameBuffer } from '../renderer/FrameBuffer';
declare function createTexturesForRenderTarget(width: number, height: number, textureNum: number, { level, internalFormat, format, type, magFilter, minFilter, wrapS, wrapT, createDepthBuffer, isMSAA, sampleCountMSAA, anisotropy, }: {
declare function createTexturesForRenderTarget(width: number, height: number, textureNum: number, { level, internalFormat, format, type, createDepthBuffer, isMSAA, sampleCountMSAA, }: {
level?: number | undefined;
internalFormat?: import("..").EnumIO | undefined;
format?: import("..").EnumIO | undefined;
type?: import("../definitions/ComponentType").ComponentTypeEnum | undefined;
magFilter?: import("..").EnumIO | undefined;
minFilter?: import("..").EnumIO | undefined;
wrapS?: import("..").EnumIO | undefined;
wrapT?: import("..").EnumIO | undefined;
createDepthBuffer?: boolean | undefined;
isMSAA?: boolean | undefined;
sampleCountMSAA?: number | undefined;
anisotropy?: boolean | undefined;
}): FrameBuffer;
declare function createDepthBuffer(width: number, height: number, { level, internalFormat, format, type, magFilter, minFilter, wrapS, wrapT, }: {
declare function createDepthBuffer(width: number, height: number, { level, internalFormat, format, type, }: {
level?: number | undefined;
internalFormat?: import("..").EnumIO | undefined;
format?: import("..").EnumIO | undefined;
type?: import("../definitions/ComponentType").ComponentTypeEnum | undefined;
magFilter?: import("..").EnumIO | undefined;
minFilter?: import("..").EnumIO | undefined;
wrapS?: import("..").EnumIO | undefined;
wrapT?: import("..").EnumIO | undefined;
}): FrameBuffer;
export declare const RenderableHelper: Readonly<{
createTexturesForRenderTarget: typeof createTexturesForRenderTarget;
Expand Down
46 changes: 0 additions & 46 deletions dist/cjs/foundation/importer/Gltf1Importer.d.ts

This file was deleted.

3 changes: 2 additions & 1 deletion dist/cjs/foundation/importer/ModelConverter.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import { Material } from '../materials/core/Material';
import { Accessor } from '../memory/Accessor';
import { RnM2, RnM2Accessor, RnM2Texture, RnM2TextureInfo, RnM2SparseIndices } from '../../types/RnM2';
import { ISceneGraphEntity } from '../helpers/EntityHelper';
import Rn from '../../cjs';
/**
* A converter class from glTF2 model to Rhodonite Native data
*/
Expand All @@ -16,7 +17,6 @@ export declare class ModelConverter {
private static __generateCameraEntity;
private static __generateLightEntity;
static convertToRhodoniteObject(gltfModel: RnM2): ISceneGraphEntity;
static _setupCamera(gltfModel: RnM2): void;
private static createRnBuffer;
static _setupTransform(gltfModel: RnM2, groups: ISceneGraphEntity[]): void;
static _setupHierarchy(gltfModel: RnM2, rnEntities: ISceneGraphEntity[]): void;
Expand All @@ -42,6 +42,7 @@ export declare class ModelConverter {
private static __makeOutputSrgb;
private static __getMaterialHash;
private static __setupMaterial;
static _createSampler(texture: RnM2Texture): Rn.Sampler;
static _createTexture(texture: RnM2Texture, gltfModel: RnM2, { autoDetectTransparency }?: {
autoDetectTransparency?: boolean | undefined;
}): Texture;
Expand Down
Loading

0 comments on commit 1474297

Please sign in to comment.