什么是网站后台,wordpress灯箱效果,怎么注册网站免费的,做暖暖小视频免费网站本示例中的3d渲染场景由Json数据来描述。
包含3个主要部分:
1. Json描述渲染器的基本信息。
2. Json描述渲染场景的环境信息,包括全局的灯光、阴影、雾等。
3. Json描述构成场景的各个可选人实体#xff0c;包括几何信息、transform、材质、渲染状态等。
当前示例源码git…本示例中的3d渲染场景由Json数据来描述。
包含3个主要部分:
1. Json描述渲染器的基本信息。
2. Json描述渲染场景的环境信息,包括全局的灯光、阴影、雾等。
3. Json描述构成场景的各个可选人实体包括几何信息、transform、材质、渲染状态等。
当前示例源码github地址:
https://github.com/vilyLei/voxwebgpu/blob/feature/material/src/voxgpu/sample/DataDrivenScene2.ts
当前示例运行效果: 此示例基于此渲染系统实现当前示例TypeScript源码如下:
json场景数据:
{renderer: {mtplEnabled: true,camera: {eye: [1100,1100,500],up: [0,1,0]}},scene: {light: {pointLights: [{position: [0,190,0],color: [5,0,0],factor1: 0.00001,factor2: 0.00002}],directionLights: [{direction: [-1, -1, 0],color: [0.5, 0.5, 0.5]}],spotLights: []},shadow: {intensity: 0.4,radius: 4},fog: {color: [0.3,0.7,0.2]}},entities: [{plane: {entity: {axisType: 1,extent: [-600,-600,1200,1200],transform: {position: [0,0,0]},materials: [{type: default,lighting: true,shadow: false,shadowReceived: true,fogging: true,arms: [1,0.3,0.2],albedo: [0.6,0.6,0.5]}]}}},{sphere: {entity: {radius: 80,transform: {position: [0,100,200]},materials: [{type: default,lighting: true,shadow: true,shadowReceived: true,fogging: true,arms: [1,0.3,0.2],albedo: [0.7,0.6,0.5]}]}}},{cube: {entity: {size: 80,transform: {position: [220,130,-10],scale: [2,1.5,3],rotation: [-190,0,200]},materials: [{type: default,lighting: true,shadow: true,shadowReceived: true,fogging: true,arms: [1,0.4,0.2],albedo: [0.3,0.7,0.8]}]}}},{torus: {entity: {radius: 150,axisType: 1,rings: 50,segments: 30,transform: {position: [0,230,0]},materials: [{type: default,lighting: true,shadow: true,shadowReceived: true,fogging: true,arms: [1,0.2,0.2],albedo: [0.2,0.5,0.8]}]}}},{model: {entity: {url: static/assets/draco/monkey.drc,transform: {position: [0,380,0],scale: [100,100,100],rotation: [0,90,0]},materials: [{type: default,lighting: true,shadow: true,shadowReceived: true,fogging: true,arms: [1,0.5,0.2],albedo: [0.6,0.3,0.8]}]}}},{cube: {entity: {size: 2050,normalScale: -1,materials: [{type: default,lighting: true,fogging: true,arms: [1,0.3,0.2],albedo: [0.3,0.3,0.7],faceCullMode: front}]}}},{gltf: {entity: {}}},{usd: {entity: {}}}]
}
代码:
export class DataDrivenScene2 {private mScene new DataDrivenRScene();initialize(): void {let url static/assets/scene/sceneData02.json;new HttpFileLoader().loadJson(url,(json: object, url: string): void {console.log(json: , json);this.initScene(json);});}private initScene(json: object): void {this.mScene.initialize(json);this.initEvent();}private initEvent(): void {const rc this.mScene;new MouseInteraction().initialize(rc.rscene, 0, false).setAutoRunning(true);}run(): void {this.mScene.run();}
}