codecamp

three.js WebGLRenderTarget

render target是一个缓冲,就是在这个缓冲中,视频卡为正在后台渲染的场景绘制像素。 它用于不同的效果,例如用于在一个图像显示在屏幕上之前先做一些处理。

构造器

WebGLRenderTarget(width : Number, height : Number, options : Object)

width -renderTarget的宽度. 默认值为 1。

height - renderTarget的高度. 默认值为 1。

options - (可选)一个保存着自动生成的目标纹理的纹理参数以及表示是否使用深度缓存/模板缓存的布尔值的对象 以下是一些合法选项:

wrapS - 默认是ClampToEdgeWrapping.
wrapT - 默认是ClampToEdgeWrapping.
magFilter - 默认是LinearFilter.
minFilter - 默认是LinearFilter.
generateMipmaps - 默认是false.
format - 默认是RGBAFormat.
type - 默认是UnsignedByteType.
anisotropy - 默认是1
encoding - 默认是LinearEncoding.
depthBuffer - 默认是true.
stencilBuffer - 默认是false.
samples - 默认是0.

创建一个新WebGLRenderTarget

属性

.isWebGLRenderTarget : Boolean

只读标志,用于检查给定对象是否属于 WebGLRenderTarget 类型。

.width : number

渲染目标宽度

.height : number

渲染目标高度

.scissor : Vector4

渲染目标视口内的一个矩形区域,区域之外的片元将会被丢弃

.scissorTest : Boolean

表明是否激活了剪裁测试

.viewport : Vector4

渲染目标的视口

.texture : Texture

纹理实例保存这渲染的像素,用作进一步处理的输入值

.depthBuffer : Boolean

渲染到深度缓冲区。默认true.

.stencilBuffer : Boolean

渲染到模板缓冲区。默认为false

.depthTexture : DepthTexture

如果设置,那么场景的深度将会被渲染到此纹理上。默认为null

.samples : Number

定义 MSAA 样本的计数。只能与 WebGL 2 一起使用。默认值为 0。

方法

.setSize ( width : Number, height : Number ) : null

设置渲染目标的大小

.clone () : WebGLRenderTarget

创建一个渲染目标副本

.copy ( source : WebGLRenderTarget ) : this

采用传入的渲染目标的设置

.dispose () : null

发出一个处理事件

EventDispatcher方法可从此类中获得

源码

src/renderers/WebGLRenderTarget.js


three.js WebGL1Renderer
three.js WebGLCubeRenderTarget
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

参考

核心 / BufferAttributes

渲染器 / WebXR

开发者参考

WebGL渲染器

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }