|
@@ -1,4 +1,4 @@
|
|
-import { REVISION, MaxEquation, MinEquation, RGB_ETC1_Format, RGBA_PVRTC_2BPPV1_Format, RGBA_PVRTC_4BPPV1_Format, RGB_PVRTC_2BPPV1_Format, RGB_PVRTC_4BPPV1_Format, RGBA_S3TC_DXT5_Format, RGBA_S3TC_DXT3_Format, RGBA_S3TC_DXT1_Format, RGB_S3TC_DXT1_Format, SrcAlphaSaturateFactor, OneMinusDstColorFactor, DstColorFactor, OneMinusDstAlphaFactor, DstAlphaFactor, OneMinusSrcAlphaFactor, SrcAlphaFactor, OneMinusSrcColorFactor, SrcColorFactor, OneFactor, ZeroFactor, ReverseSubtractEquation, SubtractEquation, AddEquation, DepthFormat, DepthStencilFormat, LuminanceAlphaFormat, LuminanceFormat, RGBAFormat, RGBFormat, AlphaFormat, HalfFloatType, FloatType, UnsignedIntType, IntType, UnsignedShortType, ShortType, ByteType, UnsignedInt248Type, UnsignedShort565Type, UnsignedShort5551Type, UnsignedShort4444Type, UnsignedByteType, LinearMipMapLinearFilter, LinearMipMapNearestFilter, LinearFilter, NearestMipMapLinearFilter, NearestMipMapNearestFilter, NearestFilter, MirroredRepeatWrapping, ClampToEdgeWrapping, RepeatWrapping, FrontFaceDirectionCW, NoBlending, BackSide, DoubleSide, TriangleFanDrawMode, TriangleStripDrawMode, TrianglesDrawMode, NoColors, FlatShading, LinearToneMapping } from '../constants';
|
|
|
|
|
|
+import { REVISION, MaxEquation, MinEquation, RGB_ETC1_Format, RGBA_PVRTC_2BPPV1_Format, RGBA_PVRTC_4BPPV1_Format, RGB_PVRTC_2BPPV1_Format, RGB_PVRTC_4BPPV1_Format, RGBA_S3TC_DXT5_Format, RGBA_S3TC_DXT3_Format, RGBA_S3TC_DXT1_Format, RGB_S3TC_DXT1_Format, SrcAlphaSaturateFactor, OneMinusDstColorFactor, DstColorFactor, OneMinusDstAlphaFactor, DstAlphaFactor, OneMinusSrcAlphaFactor, SrcAlphaFactor, OneMinusSrcColorFactor, SrcColorFactor, OneFactor, ZeroFactor, ReverseSubtractEquation, SubtractEquation, AddEquation, DepthFormat, DepthStencilFormat, LuminanceAlphaFormat, LuminanceFormat, RGBAFormat, RGBFormat, AlphaFormat, HalfFloatType, FloatType, UnsignedIntType, IntType, UnsignedShortType, ShortType, ByteType, UnsignedInt248Type, UnsignedShort565Type, UnsignedShort5551Type, UnsignedShort4444Type, UnsignedByteType, LinearMipMapLinearFilter, LinearMipMapNearestFilter, LinearFilter, NearestMipMapLinearFilter, NearestMipMapNearestFilter, NearestFilter, MirroredRepeatWrapping, ClampToEdgeWrapping, RepeatWrapping, FrontFaceDirectionCW, NoBlending, BackSide, TriangleFanDrawMode, TriangleStripDrawMode, TrianglesDrawMode, NoColors, FlatShading, LinearToneMapping } from '../constants';
|
|
import { Matrix4 } from '../math/Matrix4';
|
|
import { Matrix4 } from '../math/Matrix4';
|
|
import { WebGLUniforms } from './webgl/WebGLUniforms';
|
|
import { WebGLUniforms } from './webgl/WebGLUniforms';
|
|
import { UniformsUtils } from './shaders/UniformsUtils';
|
|
import { UniformsUtils } from './shaders/UniformsUtils';
|
|
@@ -692,7 +692,7 @@ function WebGLRenderer( parameters ) {
|
|
|
|
|
|
this.renderBufferDirect = function ( camera, fog, geometry, material, object, group ) {
|
|
this.renderBufferDirect = function ( camera, fog, geometry, material, object, group ) {
|
|
|
|
|
|
- setMaterial( material );
|
|
|
|
|
|
+ state.setMaterial( material );
|
|
|
|
|
|
program = setProgram( camera, fog, material, object );
|
|
program = setProgram( camera, fog, material, object );
|
|
geometryProgram = geometry.id + '_' + program.id + '_' + material.wireframe;
|
|
geometryProgram = geometry.id + '_' + program.id + '_' + material.wireframe;
|
|
@@ -1502,7 +1502,7 @@ function WebGLRenderer( parameters ) {
|
|
|
|
|
|
if ( object.isImmediateRenderObject ) {
|
|
if ( object.isImmediateRenderObject ) {
|
|
|
|
|
|
- setMaterial( material );
|
|
|
|
|
|
+ state.setMaterial( material );
|
|
|
|
|
|
var program = setProgram( camera, scene.fog, material, object );
|
|
var program = setProgram( camera, scene.fog, material, object );
|
|
|
|
|
|
@@ -1671,26 +1671,6 @@ function WebGLRenderer( parameters ) {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- function setMaterial( material ) {
|
|
|
|
-
|
|
|
|
- material.side === DoubleSide
|
|
|
|
- ? state.disable( _gl.CULL_FACE )
|
|
|
|
- : state.enable( _gl.CULL_FACE );
|
|
|
|
-
|
|
|
|
- state.setFlipSided( material.side === BackSide );
|
|
|
|
-
|
|
|
|
- material.transparent === true
|
|
|
|
- ? state.setBlending( material.blending, material.blendEquation, material.blendSrc, material.blendDst, material.blendEquationAlpha, material.blendSrcAlpha, material.blendDstAlpha, material.premultipliedAlpha )
|
|
|
|
- : state.setBlending( NoBlending );
|
|
|
|
-
|
|
|
|
- state.setDepthFunc( material.depthFunc );
|
|
|
|
- state.setDepthTest( material.depthTest );
|
|
|
|
- state.setDepthWrite( material.depthWrite );
|
|
|
|
- state.setColorWrite( material.colorWrite );
|
|
|
|
- state.setPolygonOffset( material.polygonOffset, material.polygonOffsetFactor, material.polygonOffsetUnits );
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
function setProgram( camera, fog, material, object ) {
|
|
function setProgram( camera, fog, material, object ) {
|
|
|
|
|
|
_usedTextureUnits = 0;
|
|
_usedTextureUnits = 0;
|