PassNode.html 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>PassNode - Three.js Docs</title>
  6. <meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
  7. <script src="../scripts/highlight.min.js"></script>
  8. <link type="text/css" rel="stylesheet" href="../styles/highlight-three.css">
  9. <link type="text/css" rel="stylesheet" href="../styles/page.css">
  10. </head>
  11. <body>
  12. <p class="inheritance" translate="no"><a href="EventDispatcher.html">EventDispatcher</a> → <a href="Node.html">Node</a> → <a href="TempNode.html">TempNode</a> → </p>
  13. <h1 translate="no">PassNode</h1>
  14. <section>
  15. <header>
  16. <div class="class-description"><p>Represents a render pass (sometimes called beauty pass) in context of post processing.
  17. This pass produces a render for the given scene and camera and can provide multiple outputs
  18. via MRT for further processing.</p></div>
  19. <h2>Code Example</h2>
  20. <div translate="no"><pre><code class="language-js">const postProcessing = new PostProcessing( renderer );
  21. const scenePass = pass( scene, camera );
  22. postProcessing.outputNode = scenePass;
  23. </code></pre></div>
  24. </header>
  25. <article>
  26. <div class="container-overview">
  27. <h2>Constructor</h2>
  28. <h3 class="name name-method" id="PassNode" translate="no">new <a href="#PassNode">PassNode</a><span class="signature">( scope : <span class="param-type">'color' | 'depth'</span>, scene : <span class="param-type">Scene</span>, camera : <span class="param-type">Camera</span>, options : <span class="param-type">Object</span> )</span> </h3>
  29. <div class="method">
  30. <div class="description">
  31. <p>Constructs a new pass node.</p>
  32. </div>
  33. <table class="params">
  34. <tbody>
  35. <tr>
  36. <td class="name"><code>scope</code></td>
  37. <td class="description last"><p>The scope of the pass. The scope determines whether the node outputs color or depth.</p></td>
  38. </tr>
  39. <tr>
  40. <td class="name"><code>scene</code></td>
  41. <td class="description last"><p>A reference to the scene.</p></td>
  42. </tr>
  43. <tr>
  44. <td class="name"><code>camera</code></td>
  45. <td class="description last"><p>A reference to the camera.</p></td>
  46. </tr>
  47. <tr>
  48. <td class="name"><code>options</code></td>
  49. <td class="description last"><p>Options for the internal render target.</p></td>
  50. </tr>
  51. </tbody>
  52. </table>
  53. </div>
  54. </div>
  55. <h2 class="subsection-title">Properties</h2>
  56. <div class="member">
  57. <h3 class="name" id="camera" translate="no">.<a href="#camera">camera</a><span class="type-signature"> : <a href="Camera.html">Camera</a></span> </h3>
  58. <div class="description">
  59. <p>A reference to the camera.</p>
  60. </div>
  61. </div>
  62. <div class="member">
  63. <h3 class="name" id="global" translate="no">.<a href="#global">global</a><span class="type-signature"> : boolean</span> </h3>
  64. <div class="description">
  65. <p>This flag is used for global cache.<br/>Default is <code>true</code>.</p>
  66. </div>
  67. <dl class="details">
  68. <dt class="tag-overrides"><strong>Overrides:</strong> <a href="TempNode.html#global">TempNode#global</a></dt>
  69. </dl>
  70. </div>
  71. <div class="member">
  72. <h3 class="name" id="isPassNode" translate="no">.<a href="#isPassNode">isPassNode</a><span class="type-signature"> : boolean</span> <span class="type-signature">(readonly) </span></h3>
  73. <div class="description">
  74. <p>This flag can be used for type testing.<br/>Default is <code>true</code>.</p>
  75. </div>
  76. </div>
  77. <div class="member">
  78. <h3 class="name" id="options" translate="no">.<a href="#options">options</a><span class="type-signature"> : Object</span> </h3>
  79. <div class="description">
  80. <p>Options for the internal render target.</p>
  81. </div>
  82. </div>
  83. <div class="member">
  84. <h3 class="name" id="renderTarget" translate="no">.<a href="#renderTarget">renderTarget</a><span class="type-signature"> : <a href="RenderTarget.html">RenderTarget</a></span> </h3>
  85. <div class="description">
  86. <p>The pass's render target.</p>
  87. </div>
  88. </div>
  89. <div class="member">
  90. <h3 class="name" id="scene" translate="no">.<a href="#scene">scene</a><span class="type-signature"> : <a href="Scene.html">Scene</a></span> </h3>
  91. <div class="description">
  92. <p>A reference to the scene.</p>
  93. </div>
  94. </div>
  95. <div class="member">
  96. <h3 class="name" id="scope" translate="no">.<a href="#scope">scope</a><span class="type-signature"> : 'color' | 'depth'</span> </h3>
  97. <div class="description">
  98. <p>The scope of the pass. The scope determines whether the node outputs color or depth.</p>
  99. </div>
  100. </div>
  101. <div class="member">
  102. <h3 class="name" id="updateBeforeType" translate="no">.<a href="#updateBeforeType">updateBeforeType</a><span class="type-signature"> : string</span> </h3>
  103. <div class="description">
  104. <p>The <code>updateBeforeType</code> is set to <code>NodeUpdateType.FRAME</code> since the node renders the
  105. scene once per frame in its <a href="PassNode.html#updateBefore">PassNode#updateBefore</a> method.<br/>Default is <code>'frame'</code>.</p>
  106. </div>
  107. <dl class="details">
  108. <dt class="tag-overrides"><strong>Overrides:</strong> <a href="TempNode.html#updateBeforeType">TempNode#updateBeforeType</a></dt>
  109. </dl>
  110. </div>
  111. <div class="member">
  112. <h3 class="name" id=".COLOR" translate="no">.<a href="#.COLOR">COLOR</a><span class="type-signature"> : 'color'</span> </h3>
  113. </div>
  114. <div class="member">
  115. <h3 class="name" id=".DEPTH" translate="no">.<a href="#.DEPTH">DEPTH</a><span class="type-signature"> : 'depth'</span> </h3>
  116. </div>
  117. <h2 class="subsection-title">Methods</h2>
  118. <h3 class="name name-method" id="compileAsync" translate="no">.<a href="#compileAsync">compileAsync</a><span class="signature">( renderer : <span class="param-type">Renderer</span> )</span><span class="type-signature"> : Promise</span> <span class="type-signature">(async) </span></h3>
  119. <div class="method">
  120. <div class="description">
  121. <p>Precompiles the pass.</p>
  122. <p>Note that this method must be called after the pass configuration is complete.
  123. So calls like <code>setMRT()</code> and <code>getTextureNode()</code> must proceed the precompilation.</p>
  124. </div>
  125. <table class="params">
  126. <tbody>
  127. <tr>
  128. <td class="name"><code>renderer</code></td>
  129. <td class="description last"><p>The renderer.</p></td>
  130. </tr>
  131. </tbody>
  132. </table>
  133. <dl class="details">
  134. <dt class="tag-see">See:</dt>
  135. <dd class="tag-see">
  136. <ul>
  137. <li><a href="Renderer.html#compileAsync">Renderer#compileAsync</a></li>
  138. </ul>
  139. </dd>
  140. </dl>
  141. <dl class="details">
  142. <dt class="tag-returns"><strong>Returns:</strong> A Promise that resolves when the compile has been finished.</dt>
  143. </dl>
  144. </div>
  145. <h3 class="name name-method" id="dispose" translate="no">.<a href="#dispose">dispose</a><span class="signature">()</span> </h3>
  146. <div class="method">
  147. <div class="description">
  148. <p>Frees internal resources. Should be called when the node is no longer in use.</p>
  149. </div>
  150. <dl class="details">
  151. <dt class="tag-overrides"><strong>Overrides:</strong> <a href="TempNode.html#dispose">TempNode#dispose</a></dt>
  152. </dl>
  153. </div>
  154. <h3 class="name name-method" id="getLayers" translate="no">.<a href="#getLayers">getLayers</a><span class="signature">()</span><span class="type-signature"> : <a href="Layers.html">Layers</a></span> </h3>
  155. <div class="method">
  156. <div class="description">
  157. <p>Gets the current layer configuration of the pass.</p>
  158. </div>
  159. <dl class="details">
  160. <dt class="tag-returns"><strong>Returns:</strong> .</dt>
  161. </dl>
  162. </div>
  163. <h3 class="name name-method" id="getLinearDepthNode" translate="no">.<a href="#getLinearDepthNode">getLinearDepthNode</a><span class="signature">( name : <span class="param-type">string</span> )</span><span class="type-signature"> : <a href="Node.html">Node</a></span> </h3>
  164. <div class="method">
  165. <div class="description">
  166. <p>Returns a linear depth node of this pass.</p>
  167. </div>
  168. <table class="params">
  169. <tbody>
  170. <tr>
  171. <td class="name"><code>name</code></td>
  172. <td class="description last"><p>The output name to get the linear depth node for. In most cases the default <code>'depth'</code> can be used however the parameter exists for custom depth outputs.<br/>Default is <code>'depth'</code>.</p></td>
  173. </tr>
  174. </tbody>
  175. </table>
  176. <dl class="details">
  177. <dt class="tag-returns"><strong>Returns:</strong> The linear depth node.</dt>
  178. </dl>
  179. </div>
  180. <h3 class="name name-method" id="getMRT" translate="no">.<a href="#getMRT">getMRT</a><span class="signature">()</span><span class="type-signature"> : <a href="MRTNode.html">MRTNode</a></span> </h3>
  181. <div class="method">
  182. <div class="description">
  183. <p>Returns the current MRT node.</p>
  184. </div>
  185. <dl class="details">
  186. <dt class="tag-returns"><strong>Returns:</strong> The current MRT node.</dt>
  187. </dl>
  188. </div>
  189. <h3 class="name name-method" id="getPreviousTexture" translate="no">.<a href="#getPreviousTexture">getPreviousTexture</a><span class="signature">( name : <span class="param-type">string</span> )</span><span class="type-signature"> : <a href="Texture.html">Texture</a></span> </h3>
  190. <div class="method">
  191. <div class="description">
  192. <p>Returns the texture holding the data of the previous frame for the given output name.</p>
  193. </div>
  194. <table class="params">
  195. <tbody>
  196. <tr>
  197. <td class="name"><code>name</code></td>
  198. <td class="description last"><p>The output name to get the texture for.</p></td>
  199. </tr>
  200. </tbody>
  201. </table>
  202. <dl class="details">
  203. <dt class="tag-returns"><strong>Returns:</strong> The texture holding the data of the previous frame.</dt>
  204. </dl>
  205. </div>
  206. <h3 class="name name-method" id="getPreviousTextureNode" translate="no">.<a href="#getPreviousTextureNode">getPreviousTextureNode</a><span class="signature">( name : <span class="param-type">string</span> )</span><span class="type-signature"> : <a href="TextureNode.html">TextureNode</a></span> </h3>
  207. <div class="method">
  208. <div class="description">
  209. <p>Returns the previous texture node for the given output name.</p>
  210. </div>
  211. <table class="params">
  212. <tbody>
  213. <tr>
  214. <td class="name"><code>name</code></td>
  215. <td class="description last"><p>The output name to get the previous texture node for.<br/>Default is <code>'output'</code>.</p></td>
  216. </tr>
  217. </tbody>
  218. </table>
  219. <dl class="details">
  220. <dt class="tag-returns"><strong>Returns:</strong> The previous texture node.</dt>
  221. </dl>
  222. </div>
  223. <h3 class="name name-method" id="getResolution" translate="no">.<a href="#getResolution">getResolution</a><span class="signature">()</span><span class="type-signature"> : number</span> </h3>
  224. <div class="method">
  225. <div class="description">
  226. <p>Gets the current resolution of the pass.</p>
  227. </div>
  228. <dl class="details">
  229. <dt class="important tag-deprecated"><strong>Deprecated:</strong> since r181. Use <a href="PassNode.html#getResolutionScale">`getResolutionScale()`</a> instead.</dt>
  230. </dl>
  231. <dl class="details">
  232. <dt class="tag-returns"><strong>Returns:</strong> The current resolution. A value of <code>1</code> means full resolution.</dt>
  233. </dl>
  234. </div>
  235. <h3 class="name name-method" id="getResolutionScale" translate="no">.<a href="#getResolutionScale">getResolutionScale</a><span class="signature">()</span><span class="type-signature"> : number</span> </h3>
  236. <div class="method">
  237. <div class="description">
  238. <p>Gets the current resolution scale of the pass.</p>
  239. </div>
  240. <dl class="details">
  241. <dt class="tag-returns"><strong>Returns:</strong> The current resolution scale. A value of <code>1</code> means full resolution.</dt>
  242. </dl>
  243. </div>
  244. <h3 class="name name-method" id="getTexture" translate="no">.<a href="#getTexture">getTexture</a><span class="signature">( name : <span class="param-type">string</span> )</span><span class="type-signature"> : <a href="Texture.html">Texture</a></span> </h3>
  245. <div class="method">
  246. <div class="description">
  247. <p>Returns the texture for the given output name.</p>
  248. </div>
  249. <table class="params">
  250. <tbody>
  251. <tr>
  252. <td class="name"><code>name</code></td>
  253. <td class="description last"><p>The output name to get the texture for.</p></td>
  254. </tr>
  255. </tbody>
  256. </table>
  257. <dl class="details">
  258. <dt class="tag-returns"><strong>Returns:</strong> The texture.</dt>
  259. </dl>
  260. </div>
  261. <h3 class="name name-method" id="getTextureNode" translate="no">.<a href="#getTextureNode">getTextureNode</a><span class="signature">( name : <span class="param-type">string</span> )</span><span class="type-signature"> : <a href="TextureNode.html">TextureNode</a></span> </h3>
  262. <div class="method">
  263. <div class="description">
  264. <p>Returns the texture node for the given output name.</p>
  265. </div>
  266. <table class="params">
  267. <tbody>
  268. <tr>
  269. <td class="name"><code>name</code></td>
  270. <td class="description last"><p>The output name to get the texture node for.<br/>Default is <code>'output'</code>.</p></td>
  271. </tr>
  272. </tbody>
  273. </table>
  274. <dl class="details">
  275. <dt class="tag-returns"><strong>Returns:</strong> The texture node.</dt>
  276. </dl>
  277. </div>
  278. <h3 class="name name-method" id="getViewZNode" translate="no">.<a href="#getViewZNode">getViewZNode</a><span class="signature">( name : <span class="param-type">string</span> )</span><span class="type-signature"> : <a href="Node.html">Node</a></span> </h3>
  279. <div class="method">
  280. <div class="description">
  281. <p>Returns a viewZ node of this pass.</p>
  282. </div>
  283. <table class="params">
  284. <tbody>
  285. <tr>
  286. <td class="name"><code>name</code></td>
  287. <td class="description last"><p>The output name to get the viewZ node for. In most cases the default <code>'depth'</code> can be used however the parameter exists for custom depth outputs.<br/>Default is <code>'depth'</code>.</p></td>
  288. </tr>
  289. </tbody>
  290. </table>
  291. <dl class="details">
  292. <dt class="tag-returns"><strong>Returns:</strong> The viewZ node.</dt>
  293. </dl>
  294. </div>
  295. <h3 class="name name-method" id="setLayers" translate="no">.<a href="#setLayers">setLayers</a><span class="signature">( layers : <span class="param-type">Layers</span> )</span><span class="type-signature"> : <a href="PassNode.html">PassNode</a></span> </h3>
  296. <div class="method">
  297. <div class="description">
  298. <p>Sets the layer configuration that should be used when rendering the pass.</p>
  299. </div>
  300. <table class="params">
  301. <tbody>
  302. <tr>
  303. <td class="name"><code>layers</code></td>
  304. <td class="description last"><p>The layers object to set.</p></td>
  305. </tr>
  306. </tbody>
  307. </table>
  308. <dl class="details">
  309. <dt class="tag-returns"><strong>Returns:</strong> A reference to this pass.</dt>
  310. </dl>
  311. </div>
  312. <h3 class="name name-method" id="setMRT" translate="no">.<a href="#setMRT">setMRT</a><span class="signature">( mrt : <span class="param-type">MRTNode</span> )</span><span class="type-signature"> : <a href="PassNode.html">PassNode</a></span> </h3>
  313. <div class="method">
  314. <div class="description">
  315. <p>Sets the given MRT node to setup MRT for this pass.</p>
  316. </div>
  317. <table class="params">
  318. <tbody>
  319. <tr>
  320. <td class="name"><code>mrt</code></td>
  321. <td class="description last"><p>The MRT object.</p></td>
  322. </tr>
  323. </tbody>
  324. </table>
  325. <dl class="details">
  326. <dt class="tag-returns"><strong>Returns:</strong> A reference to this pass.</dt>
  327. </dl>
  328. </div>
  329. <h3 class="name name-method" id="setPixelRatio" translate="no">.<a href="#setPixelRatio">setPixelRatio</a><span class="signature">( pixelRatio : <span class="param-type">number</span> )</span> </h3>
  330. <div class="method">
  331. <div class="description">
  332. <p>Sets the pixel ratio the pass's render target and updates the size.</p>
  333. </div>
  334. <table class="params">
  335. <tbody>
  336. <tr>
  337. <td class="name"><code>pixelRatio</code></td>
  338. <td class="description last"><p>The pixel ratio to set.</p></td>
  339. </tr>
  340. </tbody>
  341. </table>
  342. </div>
  343. <h3 class="name name-method" id="setResolution" translate="no">.<a href="#setResolution">setResolution</a><span class="signature">( resolution : <span class="param-type">number</span> )</span><span class="type-signature"> : <a href="PassNode.html">PassNode</a></span> </h3>
  344. <div class="method">
  345. <div class="description">
  346. <p>Sets the resolution for the pass.
  347. The resolution is a factor that is multiplied with the renderer's width and height.</p>
  348. </div>
  349. <table class="params">
  350. <tbody>
  351. <tr>
  352. <td class="name"><code>resolution</code></td>
  353. <td class="description last"><p>The resolution to set. A value of <code>1</code> means full resolution.</p></td>
  354. </tr>
  355. </tbody>
  356. </table>
  357. <dl class="details">
  358. <dt class="important tag-deprecated"><strong>Deprecated:</strong> since r181. Use <a href="PassNode.html#setResolutionScale">`setResolutionScale()`</a> instead.</dt>
  359. </dl>
  360. <dl class="details">
  361. <dt class="tag-returns"><strong>Returns:</strong> A reference to this pass.</dt>
  362. </dl>
  363. </div>
  364. <h3 class="name name-method" id="setResolutionScale" translate="no">.<a href="#setResolutionScale">setResolutionScale</a><span class="signature">( resolutionScale : <span class="param-type">number</span> )</span><span class="type-signature"> : <a href="PassNode.html">PassNode</a></span> </h3>
  365. <div class="method">
  366. <div class="description">
  367. <p>Sets the resolution scale for the pass.
  368. The resolution scale is a factor that is multiplied with the renderer's width and height.</p>
  369. </div>
  370. <table class="params">
  371. <tbody>
  372. <tr>
  373. <td class="name"><code>resolutionScale</code></td>
  374. <td class="description last"><p>The resolution scale to set. A value of <code>1</code> means full resolution.</p></td>
  375. </tr>
  376. </tbody>
  377. </table>
  378. <dl class="details">
  379. <dt class="tag-returns"><strong>Returns:</strong> A reference to this pass.</dt>
  380. </dl>
  381. </div>
  382. <h3 class="name name-method" id="setScissor" translate="no">.<a href="#setScissor">setScissor</a><span class="signature">( x : <span class="param-type">number | Vector4</span>, y : <span class="param-type">number</span>, width : <span class="param-type">number</span>, height : <span class="param-type">number</span> )</span> </h3>
  383. <div class="method">
  384. <div class="description">
  385. <p>This method allows to define the pass's scissor rectangle. By default, the scissor rectangle is kept
  386. in sync with the pass's dimensions. To reverse the process and use auto-sizing again, call the method
  387. with <code>null</code> as the single argument.</p>
  388. </div>
  389. <table class="params">
  390. <tbody>
  391. <tr>
  392. <td class="name"><code>x</code></td>
  393. <td class="description last"><p>The horizontal coordinate for the lower left corner of the box in logical pixel unit.
  394. Instead of passing four arguments, the method also works with a single four-dimensional vector.</p></td>
  395. </tr>
  396. <tr>
  397. <td class="name"><code>y</code></td>
  398. <td class="description last"><p>The vertical coordinate for the lower left corner of the box in logical pixel unit.</p></td>
  399. </tr>
  400. <tr>
  401. <td class="name"><code>width</code></td>
  402. <td class="description last"><p>The width of the scissor box in logical pixel unit.</p></td>
  403. </tr>
  404. <tr>
  405. <td class="name"><code>height</code></td>
  406. <td class="description last"><p>The height of the scissor box in logical pixel unit.</p></td>
  407. </tr>
  408. </tbody>
  409. </table>
  410. </div>
  411. <h3 class="name name-method" id="setSize" translate="no">.<a href="#setSize">setSize</a><span class="signature">( width : <span class="param-type">number</span>, height : <span class="param-type">number</span> )</span> </h3>
  412. <div class="method">
  413. <div class="description">
  414. <p>Sets the size of the pass's render target. Honors the pixel ratio.</p>
  415. </div>
  416. <table class="params">
  417. <tbody>
  418. <tr>
  419. <td class="name"><code>width</code></td>
  420. <td class="description last"><p>The width to set.</p></td>
  421. </tr>
  422. <tr>
  423. <td class="name"><code>height</code></td>
  424. <td class="description last"><p>The height to set.</p></td>
  425. </tr>
  426. </tbody>
  427. </table>
  428. </div>
  429. <h3 class="name name-method" id="setViewport" translate="no">.<a href="#setViewport">setViewport</a><span class="signature">( x : <span class="param-type">number | Vector4</span>, y : <span class="param-type">number</span>, width : <span class="param-type">number</span>, height : <span class="param-type">number</span> )</span> </h3>
  430. <div class="method">
  431. <div class="description">
  432. <p>This method allows to define the pass's viewport. By default, the viewport is kept in sync
  433. with the pass's dimensions. To reverse the process and use auto-sizing again, call the method
  434. with <code>null</code> as the single argument.</p>
  435. </div>
  436. <table class="params">
  437. <tbody>
  438. <tr>
  439. <td class="name"><code>x</code></td>
  440. <td class="description last"><p>The horizontal coordinate for the lower left corner of the viewport origin in logical pixel unit.</p></td>
  441. </tr>
  442. <tr>
  443. <td class="name"><code>y</code></td>
  444. <td class="description last"><p>The vertical coordinate for the lower left corner of the viewport origin in logical pixel unit.</p></td>
  445. </tr>
  446. <tr>
  447. <td class="name"><code>width</code></td>
  448. <td class="description last"><p>The width of the viewport in logical pixel unit.</p></td>
  449. </tr>
  450. <tr>
  451. <td class="name"><code>height</code></td>
  452. <td class="description last"><p>The height of the viewport in logical pixel unit.</p></td>
  453. </tr>
  454. </tbody>
  455. </table>
  456. </div>
  457. <h3 class="name name-method" id="toggleTexture" translate="no">.<a href="#toggleTexture">toggleTexture</a><span class="signature">( name : <span class="param-type">string</span> )</span> </h3>
  458. <div class="method">
  459. <div class="description">
  460. <p>Switches current and previous textures for the given output name.</p>
  461. </div>
  462. <table class="params">
  463. <tbody>
  464. <tr>
  465. <td class="name"><code>name</code></td>
  466. <td class="description last"><p>The output name.</p></td>
  467. </tr>
  468. </tbody>
  469. </table>
  470. </div>
  471. <h2 class="subsection-title">Source</h2>
  472. <p>
  473. <a href="https://github.com/mrdoob/three.js/blob/master/src/nodes/display/PassNode.js" target="_blank" rel="noopener" translate="no">src/nodes/display/PassNode.js</a>
  474. </p>
  475. </article>
  476. </section>
  477. <script src="../scripts/linenumber.js"></script>
  478. <script src="../scripts/page.js"></script>
  479. </body>
  480. </html>
粤ICP备19079148号