рдпрд╣ рдПрдХ рдореЗрдЯрд╛-рдмрдЧ рд╣реЛрдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд╣реИред
рд╢реЗрд╖ рдХреБрдЫ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ https://github.com/servo/servo/issues/5014 (рд╡реЗ рдЬреЛ ArrayBufferView
рдпрд╛ BufferDataSource
рдФрд░ рдУрд╡рд░рд░рд╛рдЗрдб рд╣реИрдВ) рдкрд░ рдЕрд╡рд░реБрджреНрдз рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдЕрдиреНрдп рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ред
рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рд╢реЗрд╖ рдХрдореА рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдореБрджреНрджреЗ рджрд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ E-Easy
ред
рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ
рд╡реЗрдмрдЬреАрдПрд▓ 1.0 рд╕реНрдкреЗрдХ рдпрд╣рд╛рдВ рд╣реИ ред
WebGL GLES 2.0 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП WebGL рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдЕрдХреНрд╕рд░ рдЗрд╕рдХреЗ рд╡рд┐рд╡рд░рдг рдХрд╛ рд▓рд╛рдн рдЙрдард╛рддрд╛ рд╣реИред рдЖрдк рдпрд╣рд╛рдВ рдПрдХ рдкреАрдбреАрдПрдл рд╕рдВрд╕реНрдХрд░рдг рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред
WebGL рдХреЛрдб рдХрд╛ DOM рдкрдХреНрд╖ рдирд┐рдореНрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
components/script/dom/webglrenderingcontext.rs
components/script/dom/webglactiveinfo.rs
components/script/dom/webglbuffer.rs
components/script/dom/webglcontextevent.rs
components/script/dom/webglframebuffer.rs
components/script/dom/webglobject.rs
components/script/dom/webglprogram.rs
components/script/dom/webglrenderbuffer.rs
components/script/dom/webglrenderingcontext.rs
components/script/dom/webglshader.rs
components/script/dom/webglshaderprecisionformat.rs
components/script/dom/webgltexture.rs
components/script/dom/webgluniformlocation.rs
WebGL рдереНрд░реЗрдб рд╡рд╣ рдереНрд░реЗрдб рд╣реИ рдЬреЛ DOM рд╕реЗ WebGL рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдпрд╛ рддреЛ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реИ рдпрд╛ WebRender рдмреИрдХрдПрдВрдб рдХреЛ рднреЗрдЬрддрд╛ рд╣реИред
рдЖрдкрдХреЛ рд╢рд╛рдпрдж рдпрд╣рд╛рдВ рдХреБрдЫ рднреА рдЫреВрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдлрд╝рд╛рдЗрд▓ рд╣реИ:
components/canvas/webgl_paint_thread.rs
WebGL рдХреА рд╢реЗрд╖ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рдФрд░ рдХрдорд╛рдВрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди webrender_traits
рдХреА webgl.rs
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИрдВ , рддрд╛рдХрд┐ рд╕рд░реНрд╡реЛ рдФрд░ рд╡реЗрдмрд░реЗрдВрдбрд░ рджреЛрдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред
рдЖрдк WebGLCommand
рдкрд░рд┐рднрд╛рд╖рд╛ рдФрд░ apply
рдлрд╝рдВрдХреНрд╢рди рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗред
рдЗрд╕рдХреЗ рд╕рд╛рде рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдЧреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИред
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ WebGLCommand
рд╣реИ рдлрд┐рд░ рд╕реЗ рдирд┐рд░реНрдпрд╛рдд рд╕реЗ canvas_traits
рдХреЗ рд░реВрдк рдореЗрдВ CanvasWebGLMessage
рд╡рд┐рд░рд╛рд╕рдд рдХрд╛рд░рдгреЛрдВ (рдЬрдмрдХрд┐ webrender рдЕрднреА рддрдХ рд╡рд┐рд▓рдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рд░рд┐рдмреЗрд╕ рджрд░реНрдж рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП)ред
gl.shaderSource()
(#21754) рдХреЛ рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛antialiasing
рдХреЗ WebGL рдкреНрд░рд╕рдВрдЧ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ (#реирезреиреорел)ImageBitmap
(#20650)WebGLRenderingContext.bufferSubData
(#20558) рдореЗрдВ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣ рд╕реЗ рдЙрдЪрд┐рдд рд░реВрдк рд╕реЗ рдмрдЪрд╛рд╡ рдХрд░реЗрдВ[AllowShared]
(#20515) рдХрд╛ рдЙрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерди рдХрд░реЗрдВdrawingBufferWidth
/ drawingBufferHeight
рдореЗрдВ WebGLRenderingContext
(#20530)WebGLRenderingContext.getContextAttributes
(#20532) рдХрд╛ рдХреИрд╢ рдкрд░рд┐рдгрд╛рдоWebGLRenderingContext.bufferData
(#20557) рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХреЗ рд▓рд┐рдП рдЦрд╛рд▓реА рдмрдлрд░ рдЖрд╡рдВрдЯрд┐рдд рди рдХрд░реЗрдВ[Throws]
рдкреНрд░рддрд┐-рдЕрдзрд┐рднрд╛рд░ рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ (#20516)WebGLRenderingContext.getProgramInfoLog
(#20561) рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдСрдбрд┐рдЯ рдХрд░реЗрдВhandle_object_deletion
рдЧрд▓рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (#реирезрейрелреи)WebGLRenderingContext.activeTexture
(#20531) рдореЗрдВ рд╕реАрдорд╛ рдХреА рдЙрдЪрд┐рдд рдЬрд╛рдВрдЪ рдХрд░реЗрдВgl.getParameter(gl.ALIASED_LINE_WIDTH_RANGE)
(#20535)gl.getParameter(gl.BLEND_COLOR)
(#20536)gl.getParameter(gl.COLOR_CLEAR_VALUE)
(#20537)gl.getParameter(gl.COLOR_WRITEMASK)
(#20538)gl.getParameter(gl.COMPRESSED_TEXTURE_FORMATS)
(#20544)gl.getParameter(gl.DEPTH_RANGE)
(#20545)gl.getParameter(gl.GENERATE_MIPMAP_HINT)
(#20546)IMPLEMENTATION_COLOR_READ_FORMAT
рдФрд░ IMPLEMENTATION_COLOR_READ_TYPE
(#20547)MAX_FRAGMENT_UNIFORM_VECTORS
рдФрд░ MAX_VERTEX_UNIFORM_VECTORS
(#20548)gl.getParameter(gl.MAX_VARYING_VECTORS)
(#20549)SCISSOR_TEST
рдФрд░ SCISSOR_BOX
(#20551)gl.getParameter(gl.UNPACK_COLORSPACE_CONVERSION_WEBGL)
(#20552)gl.getParameter(gl.UNPACK_FLIP_Y_WEBGL)
(#20553)gl.getParameter(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL)
(#20554)WebGLRenderingContext.bindBuffer
рдЪреЗрдХ рдХреЛ рдареАрдХ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░реЗрдВ (#20556)gl.renderbufferStorage
(#20563) рдХреЗ рд▓рд┐рдП рдЪреЗрдХ рдХреЛ рдареАрдХ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░реЗрдВWebGLRenderingContext.getFramebufferAttachmentParameter
(#20593) рдореЗрдВ рдЪреЗрдХ рдХрд╛ рдСрдбрд┐рдЯ рдХрд░реЗрдВWebGLRenderingContext.clear
(#20623) рдХреЗ рддрд░реНрдХ рдХреЛ рдареАрдХ рд╕реЗ рдЬрд╛рдВрдЪреЗрдВGLclampf
рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдмрд╛рдБрдзрддреЗ рд╣реИрдВ (#20652)gl.getParameter
рдФрд░ рджреЛрд╕реНрддреЛрдВ (#20655) рдореЗрдВ рд╕рд╣реА рдкреНрд░рдХрд╛рд░ рд▓реМрдЯрд╛рдПрдВrenderbufferStorage
(#резрейренрезреж) рд╕реЗ рдЕрдкреНрд░рд╛рд░рдВрднреАрдХреГрдд рдбреЗрдЯрд╛ рд░рд┐рд╕рд╛рд╡ рдХреЛ рдареАрдХ рдХрд░реЗрдВWebGLShader
рд╡реЗрдмрд▓реЙрдЧ рдкреЗрдЬ рдмрдВрдж рдХрд░рддреЗ рд╕рдордп рдбрд┐рд╕реНрдЯреНрд░рдХреНрдЯрд░ рдЕрдХреНрд╕рд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реИ (#реирезрезренрен)WebGLRenderingContext
s рд╣реЛрдВ, рддреЛ рд╣рдорд╛рд░реЗ рд╕рддреНрдпрд╛рдкрдиреЛрдВ рдХреА рдлрд┐рд░ рд╕реЗ рдЬрд╛рдБрдЪ рдХрд░реЗрдВредWebGLCommand
рдХреЛ CanvasWebGLMessage
рд░реВрдк рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЗрдВ (https://github.com/servo/servo/issues/10211)gl.getActiveAttrib
рдФрд░ gl.getActiveUniform
(#20600) рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЪрд┐рдд рдХрд░реЗрдВgl.getVertexAttrib
рдФрд░ gl.getVertexAttribOffset
(#20608) рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХреИрд╢ рдЬрд╛рдирдХрд╛рд░реАgl-pointcoord.html
рдХреБрдЫ рднреА рдЖрдХрд░реНрд╖рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ (#реирезренрезреп)oes-texture-half-float.html
рдбреЗрд╕реНрдХрдЯреЙрдк рдореЛрдб рдореЗрдВ рдЪрд▓рдиреЗ рдкрд░ GL рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рдШрдмрд░рд╛рд╣рдЯ (#реирезремремрей)preserveDrawingBuffer
рдХреЗ WebGL рд╕рдВрджрд░реНрдн рд╡рд┐рдХрд▓реНрдк рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ (#21132)рд╕реАрд╕реА @dmarcos
рдореИрдВ GenerateMipmap рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдБ
@ConnorGBrewster рдореИрдВрдиреЗ https://github.com/servo/servo/issues/10226 рдЦреЛрд▓рд╛, рдЖрдЗрдП рд╡рд╣рд╛рдВ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВ :)
рдореИрдВ getActiveUniform
рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ
@saurvs рдореИрдВрдиреЗ рдЖрдкрдХреЗ рд▓рд┐рдП https://github.com/servo/servo/issues/10397 рдЦреЛрд▓рд╛ рд╣реИ, рд╡рд╣рд╛рдВ рдХреЛрдИ рднреА рдкреНрд░рд╢реНрди рдкреВрдЫрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВ :)
рдореИрдВ рд╢реЗрд╖ рд╕рднреА рд╕рдорд╛рди рд╡рд┐рдзрд┐рдпреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЕрдЧрд░ рдпрд╣ рдареАрдХ рд╣реИ
@autrilla рд╡реЗ рдЖрдкрдХреЗ рд╣реИрдВ! рдореИрдВрдиреЗ рдЙрдирдХрд╛ рдЯреНрд░реИрдХ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП https://github.com/servo/servo/issues/10417 рдЦреЛрд▓рд╛ рд╣реИ, рд╡рд╣рд╛рдВ рдХреЛрдИ рднреА рдкреНрд░рд╢реНрди рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВ :)
рдореИрдВ рд╕реНрдЯреИрдВрд╕рд┐рд▓ * рдлрд╝рдВрдХреНрд╢рди рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВред
рдореИрдВ copyTex*
рдФрд░ texSubImage2D
рдкрд░ рдПрдХ рджрд░рд╛рд░ рд▓реЗ рд░рд╣рд╛ рд╣реВрдБ
рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рд╕реЗ
Implement isShader
Implement isTexture
рдореИрдВ texSubImage2D
рдорджрдж рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛/рдЪрд╛рд╣рддреА рд╣реВрдВ
@daoshengmu : рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ!
@danlrobertson , рдХреНрдпрд╛ рдЖрдк рдЕрднреА рднреА texSubImage2D
рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ?
@danlrobertson рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдзреНрдпрд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛ рдХрд┐ рдЖрдк texSubImage2D
рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдореИрдВ рд╕рд┐рд░реНрдл рд╡реЗрдмрдЬреАрдПрд▓ рдХреЗ рдХреБрдЫ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдорджрдж рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдпрджрд┐ рдЖрдк рдЕрднреА рднреА рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдореИрдВ copyTexImage2D
рдФрд░ copyTexSubImage2D
@emilio рдЪреБрди рд╕рдХрддрд╛ рд╣реВрдВ
@daoshengmu рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ! рдмрд┐рд▓рдХреБрд▓ рдареАрдХ рд╣реИ! рдкреАрдЖрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рдЗрддрдирд╛ рд╕рдордп рд▓рдЧрдирд╛ рдореЗрд░рд╛ рдмреБрд░рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдлрд╕реЛрд╕ рдЬреАрд╡рди рд╣реЛрддрд╛ рд╣реИ: рдореБрд╕реНрдХрд╛рди:...
рдХреНрдпрд╛ рдЖрдк texSubImage2D
рд▓реЗрдиреЗ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реИрдВ? рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдЖрд╡рд╢реНрдпрдХ рдШрдЯрдХреЛрдВ рдХреЛ wr_traits рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░ рджрд┐рдпрд╛ рд╣реИ ред рдореЗрд░реЗ рдкрд╛рд╕ рд╢реАрдШреНрд░ рд╣реА copyTex*
рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ texSubImage2D
рдкрд░ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рдпрджрд┐ рдЖрдк texSubImage2D
, рддреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЬрд╛рдПрдВ! рдореБрдЭреЗ рдЗрд╕рд╕реЗ рдХреЛрдИ рдЦрд╛рд╕ рд▓рдЧрд╛рд╡ рдирд╣реАрдВ рд╣реИред рдмрд╕ рд╡реЗрдмрдЬреАрдПрд▓ рдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╕реАрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛...
@danlrobertson рдЬрд╝рд░реВрд░ред рдореИрдВ texSubImage2D
рд▓реВрдВрдЧрд╛ред рдзрдиреНрдпрд╡рд╛рдж! рдореИрдВ
рдЕрдЧрд░ рдпрд╣ рдареАрдХ рд╣реИ рддреЛ рдореИрдВ рдХрд╛рдо рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБ
Implement isFramebuffer
рддрдерд╛
Implement isRenderBuffer
@DDEFISHER рдЗрд╕рдХреЗ рд▓рд┐рдП рдЬрд╛рдПрдВ! рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдореБрджреНрджрд╛ рдЦреЛрд▓рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдореИрдВ рдЖрдкрдХреЛ рд╡рд╣рд╛рдВ рдЕрд╕рд╛рдЗрди рдХрд░ рд╕рдХреВрдВ?
рдореИрдВ isBuffer
рдкрд░ рднреА рдХрд╛рдо рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдиреНрдп 2 . рдХреЗ рд╕рдорд╛рди рд╣реИ
рдпрджрд┐ рдЖрдк рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд░рдЦрддреЗ рд╣реИрдВ рддреЛ рдХреГрдкрдпрд╛ рдпрд╣рд╛рдВ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВред рд╢реБрдХреНрд░рд┐рдпрд╛!
рдЕрд▓рдЧ-рдЕрд▓рдЧ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдореБрджреНрджреЗ рдИ-рдЖрд╕рд╛рди рд╕рд╛рдордЧреНрд░реА рд╣реИрдВ; рдпрд╣ рдирд╣реАрдВред
рдХреНрдпрд╛ рдХреЛрдИ рдИ-рдЖрд╕рд╛рди (рдЖрдИрдПрд╕рдПрдЪ) рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕ рдкрд░ рдореИрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ? рдзрдиреНрдпрд╡рд╛рдж :)
@ofekd isEnabled
рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ enable
рдФрд░ disable
рдкрд╣рд▓реЗ рд╣реА рд▓рд╛рдЧреВ рд╣реЛ рдЪреБрдХреЗ рд╣реИрдВ!
@jdm рдореИрдВ рдЗрд╕реЗ рд▓реВрдВрдЧрд╛
@ofekd isEnabled рдПрдХ рдирдП рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЛ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдЪреАрдЬреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред webgl-specific.html
рдореЗрдВ рдХреБрдЫ рдЯреЗрд╕реНрдЯрдХреЗрд╕, рдЬреИрд╕реЗ рдмреНрд▓реЗрдВрдбрд┐рдВрдЧ func рдпрд╛ stencil func рд╡рд╛рд▓реЗ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫреЗ рд╢реБрд░реБрдЖрддреА рдмрд┐рдВрджреБ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред invalid-passed-params.html
рднреА рдЕрдЪреНрдЫреЗ рдЖрд╕рд╛рди рдХрд╛рдо рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред
@anholt рдЬрдм рддрдХ рдпрд╣ рдХрд╛рдлреА рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИ, рдореБрдЭреЗ рдХреБрдЫ рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ред рдореИрдВрдиреЗ рдЕрднреА рддрдХ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдмрджрд▓рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ:
webrender_traits/src/webgl.rs
servo/components/script/dom/webglrenderingcontext.rs
servo/components/script/dom/webidls/WebGLRenderingContext.webidl
рдЬрдм рддрдХ рдпрд╣ рдХрд┐рд╕реА рднреА рддрд░рд╣ рдЕрдиреНрдп рдкреНрд░рдпрд╛рд╕реЛрдВ рдореЗрдВ рдмрд╛рдзрд╛ рдирд╣реАрдВ рдбрд╛рд▓рддрд╛, рдореИрдВ isEnabled
рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреВрдВрдЧрд╛
рдореИрдВ рдорд╛рдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдФрд░ getProgramInfoLog рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдкрд░ рдХрд╛рдо рдХрд░реВрдВрдЧрд╛
рдореИрдВ рдпреВрдирд┐рдлреЙрд░реНрдордореИрдЯреНрд░рд┐рдХреНрд╕2рдПрдлрд╡реА, рдпреВрдирд┐рдлреЙрд░реНрдордореИрдЯреНрд░рд┐рдХреНрд╕3рдПрдлрд╡реА, рдпреВрдирд┐рдлреЙрд░реНрдордореИрдЯреНрд░рд┐рдХреНрд╕4рдПрдлрд╡реА рдФрд░ рдлреНрд░реЗрдордмрдлрд░рд░реЗрдВрдбрд░рдмрдлрд░, рдлреНрд░реЗрдордмрдлрд░рдЯреЗрдХреНрд╕реНрдЪрд░2рдбреА, рд░реЗрдВрдбрд░рдмрдлрд░рд╕реНрдЯреЛрд░реЗрдЬ рдкрд░ рдХрд╛рдо рдХрд░реВрдВрдЧрд╛ред
рдореИрдВ рдЕрдзрд┐рдХ рдорд╛рдВрдЧ рд╡рд╛рд▓реЗ рд╡реЗрдмрд▓реЙрдЧ рдбреЗрдореЛ рдЪрд▓рд╛рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд╕рд░реНрд╡реЛ рдкрд░ рдкреВрд░реНрдг рдорд╛рдкрддрд╛ рд╣реВрдВ рдФрд░ рдореБрдЭреЗ рдЙрди рдХрд╛рд░реНрдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ;)
@MortimerGoro рдореИрдВ рдПрдлрдмреАрдУ рд╕рдорд░реНрдерди рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ (рд╣рд╛рд▓ рдХреЗ рдХреБрдЫ рд╡рд┐рд▓рдп рджреЗрдЦреЗрдВ, рдФрд░ https://github.com/anholt/servo/tree/webgl-fbo)ред рдореИрдВрдиреЗ рд╡рд░реНрджреАрдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП https://github.com/anholt/servo/tree/webgl-uniform-matrix-v рднреА рдПрдХ рд╕рд╛рде рд░рдЦрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд░реАрдХреНрд╖рдг рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
@anholt рдХрдорд╛рд▓! рдХреНрдпрд╛ рдЖрдкрдХреЛ рдпреВрдирд┐рдлрд╝реЙрд░реНрдордореИрдЯреНрд░рд┐рдХреНрд╕ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдХрд┐рд╕реА рд╕рд╣рд╛рдпрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?
@MortimerGoro рд╕рд┐рд░реНрдл рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИред
рдореИрдВрдиреЗ FBO рд╕рдорд░реНрдерди рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП #13639 рдЦреЛрд▓рд╛ рд╣реИред рдЗрд╕реЗ рдлреНрд░реЗрдордмрдлрд░ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВрд░реЗрдВрдбрд░рдмрдлрд░/рдлреНрд░реЗрдордмрдлрд░Texture2D?
@ рд╢реНрд░рд╡рдг-рдЖрдЪрд╛рд░ рдпрд╣рд╛рдВ рд╢реЗрд╖ рд▓реЛрдЧреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд▓реЗ рд╕рдХрддрд╛ рд╣реИред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ toDataURL()
рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рд╡реЗрдмрдЬреАрдПрд▓ рдХреЗ рд▓рд┐рдП рд╢реЗрд╖ рдЯреЗрд╕реНрдЯрдХреЗрд╕ рдореБрджреНрджреЛрдВ (рдЬреИрд╕реЗ asin_001_to_006.html
) рдХрд╛ рдХрд╛рд░рдг рд╣реИред
рдЕрднреА рдХреЗрд╡рд▓ 5 рд▓рд╛рдкрддрд╛ API рд╣реИрдВред
рдореИрдВ, @taki-jaro, @mrowqa рдФрд░ @xanewok рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдПрдХ рдЫрд╛рддреНрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ
cc @KiChjang
рдореИрдВ glGetTexParameter рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВред
getFramebufferAttachmentParameter()
рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред
рдореИрдВ getRenderbufferParameter
рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛/рдЪрд╛рд╣рддреА рд╣реВрдВ
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЕрдм рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рд╕рдВрдкрд╛рджрди рдХрд╛ рд░рд┐рдХреЙрд░реНрдб рдирд╣реАрдВ рд░рдЦ рд░рд╣реА рд╣реИред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдм рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред
рдореИрдВрдиреЗ рдореБрджреНрджреЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдЬреЛрдбрд╝рд╛ред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдореИрдВ glGetTexParameter рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВред