Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
车家大少爷
three.js
提交
1f971fbd
T
three.js
项目概览
车家大少爷
/
three.js
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
three.js
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
1f971fbd
编写于
7月 11, 2019
作者:
W
WestLangley
提交者:
GitHub
7月 11, 2019
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #17017 from WestLangley/dev_post_direct_gl
Postprocessing: Avoid direct gl calls
上级
8c598c64
84fc12e1
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
12 addition
and
14 deletion
+12
-14
examples/js/postprocessing/BloomPass.js
examples/js/postprocessing/BloomPass.js
+2
-2
examples/js/postprocessing/OutlinePass.js
examples/js/postprocessing/OutlinePass.js
+2
-2
examples/js/postprocessing/UnrealBloomPass.js
examples/js/postprocessing/UnrealBloomPass.js
+2
-3
examples/jsm/postprocessing/BloomPass.js
examples/jsm/postprocessing/BloomPass.js
+2
-2
examples/jsm/postprocessing/OutlinePass.js
examples/jsm/postprocessing/OutlinePass.js
+2
-2
examples/jsm/postprocessing/UnrealBloomPass.js
examples/jsm/postprocessing/UnrealBloomPass.js
+2
-3
未找到文件。
examples/js/postprocessing/BloomPass.js
浏览文件 @
1f971fbd
...
...
@@ -77,7 +77,7 @@ THREE.BloomPass.prototype = Object.assign( Object.create( THREE.Pass.prototype )
render
:
function
(
renderer
,
writeBuffer
,
readBuffer
,
deltaTime
,
maskActive
)
{
if
(
maskActive
)
renderer
.
context
.
disable
(
renderer
.
context
.
STENCIL_TEST
);
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
false
);
// Render quad with blured scene into texture (convolution pass 1)
...
...
@@ -106,7 +106,7 @@ THREE.BloomPass.prototype = Object.assign( Object.create( THREE.Pass.prototype )
this
.
copyUniforms
[
"
tDiffuse
"
].
value
=
this
.
renderTargetY
.
texture
;
if
(
maskActive
)
renderer
.
context
.
enable
(
renderer
.
context
.
STENCIL_TEST
);
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
true
);
renderer
.
setRenderTarget
(
readBuffer
);
if
(
this
.
clear
)
renderer
.
clear
();
...
...
examples/js/postprocessing/OutlinePass.js
浏览文件 @
1f971fbd
...
...
@@ -260,7 +260,7 @@ THREE.OutlinePass.prototype = Object.assign( Object.create( THREE.Pass.prototype
renderer
.
autoClear
=
false
;
if
(
maskActive
)
renderer
.
context
.
disable
(
renderer
.
context
.
STENCIL_TEST
);
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
false
);
renderer
.
setClearColor
(
0xffffff
,
1
);
...
...
@@ -362,7 +362,7 @@ THREE.OutlinePass.prototype = Object.assign( Object.create( THREE.Pass.prototype
this
.
overlayMaterial
.
uniforms
[
"
usePatternTexture
"
].
value
=
this
.
usePatternTexture
;
if
(
maskActive
)
renderer
.
context
.
enable
(
renderer
.
context
.
STENCIL_TEST
);
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
true
);
renderer
.
setRenderTarget
(
readBuffer
);
this
.
fsQuad
.
render
(
renderer
);
...
...
examples/js/postprocessing/UnrealBloomPass.js
浏览文件 @
1f971fbd
...
...
@@ -190,7 +190,7 @@ THREE.UnrealBloomPass.prototype = Object.assign( Object.create( THREE.Pass.proto
renderer
.
setClearColor
(
this
.
clearColor
,
0
);
if
(
maskActive
)
renderer
.
context
.
disable
(
renderer
.
context
.
STENCIL_TEST
);
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
false
);
// Render input to screen
...
...
@@ -255,8 +255,7 @@ THREE.UnrealBloomPass.prototype = Object.assign( Object.create( THREE.Pass.proto
this
.
fsQuad
.
material
=
this
.
materialCopy
;
this
.
copyUniforms
[
"
tDiffuse
"
].
value
=
this
.
renderTargetsHorizontal
[
0
].
texture
;
if
(
maskActive
)
renderer
.
context
.
enable
(
renderer
.
context
.
STENCIL_TEST
);
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
true
);
if
(
this
.
renderToScreen
)
{
...
...
examples/jsm/postprocessing/BloomPass.js
浏览文件 @
1f971fbd
...
...
@@ -90,7 +90,7 @@ BloomPass.prototype = Object.assign( Object.create( Pass.prototype ), {
render
:
function
(
renderer
,
writeBuffer
,
readBuffer
,
deltaTime
,
maskActive
)
{
if
(
maskActive
)
renderer
.
getContext
().
disable
(
renderer
.
getContext
().
STENCIL_TEST
);
// avoid direct gl calls
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
false
);
// Render quad with blured scene into texture (convolution pass 1)
...
...
@@ -119,7 +119,7 @@ BloomPass.prototype = Object.assign( Object.create( Pass.prototype ), {
this
.
copyUniforms
[
"
tDiffuse
"
].
value
=
this
.
renderTargetY
.
texture
;
if
(
maskActive
)
renderer
.
getContext
().
enable
(
renderer
.
getContext
().
STENCIL_TEST
);
// avoid direct gl calls
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
true
);
renderer
.
setRenderTarget
(
readBuffer
);
if
(
this
.
clear
)
renderer
.
clear
();
...
...
examples/jsm/postprocessing/OutlinePass.js
浏览文件 @
1f971fbd
...
...
@@ -280,7 +280,7 @@ OutlinePass.prototype = Object.assign( Object.create( Pass.prototype ), {
renderer
.
autoClear
=
false
;
if
(
maskActive
)
renderer
.
getContext
().
disable
(
renderer
.
getContext
().
STENCIL_TEST
);
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
false
);
renderer
.
setClearColor
(
0xffffff
,
1
);
...
...
@@ -382,7 +382,7 @@ OutlinePass.prototype = Object.assign( Object.create( Pass.prototype ), {
this
.
overlayMaterial
.
uniforms
[
"
usePatternTexture
"
].
value
=
this
.
usePatternTexture
;
if
(
maskActive
)
renderer
.
getContext
().
enable
(
renderer
.
getContext
().
STENCIL_TEST
);
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
true
);
renderer
.
setRenderTarget
(
readBuffer
);
this
.
fsQuad
.
render
(
renderer
);
...
...
examples/jsm/postprocessing/UnrealBloomPass.js
浏览文件 @
1f971fbd
...
...
@@ -206,7 +206,7 @@ UnrealBloomPass.prototype = Object.assign( Object.create( Pass.prototype ), {
renderer
.
setClearColor
(
this
.
clearColor
,
0
);
if
(
maskActive
)
renderer
.
getContext
().
disable
(
renderer
.
getContext
().
STENCIL_TEST
);
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
false
);
// Render input to screen
...
...
@@ -271,8 +271,7 @@ UnrealBloomPass.prototype = Object.assign( Object.create( Pass.prototype ), {
this
.
fsQuad
.
material
=
this
.
materialCopy
;
this
.
copyUniforms
[
"
tDiffuse
"
].
value
=
this
.
renderTargetsHorizontal
[
0
].
texture
;
if
(
maskActive
)
renderer
.
getContext
().
enable
(
renderer
.
getContext
().
STENCIL_TEST
);
if
(
maskActive
)
renderer
.
state
.
buffers
.
stencil
.
setTest
(
true
);
if
(
this
.
renderToScreen
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录