GLBufferAttribute.html 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <!DOCTYPE html>
  2. <html lang="it">
  3. <head>
  4. <meta charset="utf-8" />
  5. <base href="../../../" />
  6. <script src="page.js"></script>
  7. <link type="text/css" rel="stylesheet" href="page.css" />
  8. </head>
  9. <body>
  10. <h1>[name]</h1>
  11. <p class="desc">
  12. Questa classe di attributi del buffer non costruisce un VBO. Invece,
  13. utilizza qualsiasi VBO che gli viene passato nel costruttore e può essere
  14. successivamente alterato tramite la proprietà `buffer`.<br /><br />
  15. È necessario passare parametri aggiuntivi insieme a VBO. I quali sono:
  16. il contesto GL, il tipo di dati GL, il numero di componenti per vertice,
  17. il numero di byte per componente, e il numero di vertici. <br /><br />
  18. Il caso d'uso più comune per questa classe è quando un qualche tipo di
  19. calcolo GPGPU interferisce o addirittura produce i VBO in questione.
  20. </p>
  21. <h2>Costruttore</h2>
  22. <h3>[name]( [param:WebGLBuffer buffer], [param:GLenum type], [param:Integer itemSize], [param:Integer elementSize], [param:Integer count] )</h3>
  23. <p>
  24. `buffer` — Deve essere un [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLBuffer WebGLBuffer].
  25. <br />
  26. `type` — Uno dei [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/Constants#Data_types Tipi di dati WebGL].
  27. <br />
  28. `itemSize` — Il numero dei valori dell'array che devono essere associati con un particolare vertice. Ad esempio,
  29. se questo attributo memorizza un vettore a 3 componenti (come una posizione, una normale, un colore), allora itemSize dovrebbe essere 3.
  30. <br />
  31. `elementSize` — 1, 2 o 4. La dimensione corrispondente (in byte) per il parametro "type" passato.
  32. <ul>
  33. <li>gl.FLOAT: 4</li>
  34. <li>gl.UNSIGNED_SHORT: 2</li>
  35. <li>gl.SHORT: 2</li>
  36. <li>gl.UNSIGNED_INT: 4</li>
  37. <li>gl.INT: 4</li>
  38. <li>gl.BYTE: 1</li>
  39. <li>gl.UNSIGNED_BYTE: 1</li>
  40. </ul>
  41. `count` — Il numero previsto di vertici in VBO.
  42. </p>
  43. <h2>Proprietà</h2>
  44. <h3>[property:WebGLBuffer buffer]</h3>
  45. <p>
  46. L'istanza corrente di [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLBuffer WebGLBuffer].
  47. </p>
  48. <h3>[property:Integer count]</h3>
  49. <p>
  50. Il numero previsto di vertici in VBO.
  51. </p>
  52. <h3>[property:Boolean isGLBufferAttribute]</h3>
  53. <p>
  54. Solo lettura. Sempre `true`.
  55. </p>
  56. <h3>[property:Integer itemSize]</h3>
  57. <p>
  58. Quanti valori compongono ogni elemento (vertice).
  59. </p>
  60. <h3>[property:Integer elementSize]</h3>
  61. <p>
  62. Memorizza la dimensione corrispondente in byte per il valore della proprietà del `type` corrente.
  63. </p>
  64. <p>
  65. Vedi sopra (costruttore) per un elenco di dimensioni di type conosciute.
  66. </p>
  67. <h3>[property:String name]</h3>
  68. <p>
  69. Un nome opzionale per questa istanza dell'attributo. Il valore predefinito è una stringa vuota.
  70. </p>
  71. <h3>[property:GLenum type]</h3>
  72. <p>
  73. Un [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/Constants#Data_types WebGL Data Type]
  74. che descrive i contenuti VBO.
  75. </p>
  76. <p>
  77. Imposta questa proprietà insieme a `elementSize`. Il modo consigliato è
  78. di usare il metodo `setType`.
  79. </p>
  80. <h2>Metodi</h2>
  81. <h3>[method:this setBuffer]( buffer ) </h3>
  82. <p>Imposta la proprietà `buffer`.</p>
  83. <h3>[method:this setType]( type, elementSize ) </h3>
  84. <p>Imposta entrambe le proprietà `type` e `elementSize`.</p>
  85. <h3>[method:this setItemSize]( itemSize ) </h3>
  86. <p>Imposta la proprietà `itemSize`.</p>
  87. <h3>[method:this setCount]( count ) </h3>
  88. <p>Imposta la proprietà `count`.</p>
  89. <h3>[property:Integer version]</h3>
  90. <p>
  91. Un numero di versione, incrementato ogni volta che la proprietà needsUpdate è impostata a true.
  92. </p>
  93. <h3>[property:Boolean needsUpdate]</h3>
  94. <p>
  95. Il valore predefinito è `false`. Impostando questo metodo a true incrementa la [page:GLBufferAttribute.version versione].
  96. </p>
  97. <h2>Source</h2>
  98. <p>
  99. [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
  100. </p>
  101. </body>
  102. </html>