Popov72 4 年 前
コミット
9536342b0f

+ 3 - 0
src/Engines/WebGPU/webgpuBufferManager.ts

@@ -120,6 +120,7 @@ export class WebGPUBufferManager {
                             (data as Uint8Array).set(new Uint8Array(copyArrayBuffer));
                             break;
                         case 1: // half float
+                            // TODO WEBGPU use computer shaders (or render pass) to make the conversion?
                             data = this._GetHalfFloatAsFloatRGBAArrayBuffer(width, height, 0, size / 2, copyArrayBuffer);
                             break;
                         case 2: // float
@@ -134,6 +135,7 @@ export class WebGPUBufferManager {
                             (data as Uint8Array).set(new Uint8Array(copyArrayBuffer));
                             break;
                         case 1: // half float
+                            // TODO WEBGPU use computer shaders (or render pass) to make the conversion?
                             data = this._GetHalfFloatAsFloatRGBAArrayBuffer(width, height, 0, size / 2, copyArrayBuffer, buffer as Float32Array);
                             break;
                         case 2: // float
@@ -143,6 +145,7 @@ export class WebGPUBufferManager {
                     }
                 }
                 if (bytesPerRow !== bytesPerRowAlignedAligned) {
+                    // TODO WEBGPU use computer shaders (or render pass) to build the final buffer data?
                     const data2: Uint8Array = data as Uint8Array;
                     let offset = bytesPerRow, offset2 = 0;
                     for (let y = 1; y < height; ++y) {

+ 1 - 1
src/Engines/webgpuEngine.ts

@@ -2228,7 +2228,7 @@ export class WebGPUEngine extends Engine {
     }
 
     public updateRenderTargetTextureSampleCount(texture: Nullable<InternalTexture>, samples: number): number {
-        // samples is used at creation time in WebGPU, you can't change it afterwards
+        // TODO WEBGPU handle this
 
         return samples;
     }

+ 2 - 0
src/Materials/Node/Blocks/Dual/lightBlock.ts

@@ -16,7 +16,9 @@ import { _TypeStore } from '../../../../Misc/typeStore';
 import { Scene } from '../../../../scene';
 
 import "../../../../Shaders/ShadersInclude/lightFragmentDeclaration";
+import "../../../../Shaders/ShadersInclude/lightVxFragmentDeclaration";
 import "../../../../Shaders/ShadersInclude/lightUboDeclaration";
+import "../../../../Shaders/ShadersInclude/lightVxUboDeclaration";
 import "../../../../Shaders/ShadersInclude/lightFragment";
 import "../../../../Shaders/ShadersInclude/helperFunctions";
 import "../../../../Shaders/ShadersInclude/lightsFragmentFunctions";

+ 1 - 1
src/Meshes/abstractMesh.ts

@@ -697,7 +697,7 @@ export class AbstractMesh extends TransformNode implements IDisposable, ICullabl
     public onRebuildObservable = new Observable<AbstractMesh>();
 
     /**
-     * The current camera unifom buffer.
+     * The current mesh unifom buffer.
      * @hidden Internal use only.
      */
     public _uniformBuffer: UniformBuffer;

+ 1 - 0
src/scene.ts

@@ -1174,6 +1174,7 @@ export class Scene extends AbstractScene implements IAnimatable, IClipPlanesHold
 
     /** @hidden */
     public _viewMatrix: Matrix;
+    /** @hidden */
     public _projectionMatrix: Matrix;
     /** @hidden */
     public _forcedViewPosition: Nullable<Vector3>;