VertexTextureFetchの活用について

138 views

Published on

Aiming 飲み会 #5 グラフィックエンジニア新年会 で発表したLT資料
https://aiming.connpass.com/event/47220/

Published in: Engineering
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
138
On SlideShare
0
From Embeds
0
Number of Embeds
37
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Khronos Group が策定しているAPIの仕様
  • VertexTextureFetchの活用について

    1. 1. Vertex Texture Fetchの 活用について 株式会社Aiming ソフトウェアエンジニア 山納 一生
    2. 2. 目次 1. OpenGL ES 3.0 2. Vertex Texture Fetch 3. インタラクティブな草揺れ
    3. 3. OpenGL と Open GL ES • OpenGL (Open Graphics Library) • OpenGL ES (OpenGL for Embedded Systems)
    4. 4. OpenGL ES 3.0 とは • OpenGL ES 1.0 / 1.1 • OpenGL ES 2.0 • OpenGL ES 3.0 • OpenGL ES 3.1 • OpenGL ES 3.2
    5. 5. GLSL ES 3.0 • HLSL Shader Model 4.0 くらい – Geometry Shader は OpenGL ES 3.2 で追加 – MRT – VertexID / InstanceID – 補間レジスタ数が16に増加 – 他にも多くの変更点
    6. 6. Vertex Texture Fetch (VTF) • Vertex Shader で Texture が読める – VertexColorは? • 動的に変更しにくい • 複数の値を扱いにくい
    7. 7. Displacement Mapping • VS にできて FS にできないことは? – 頂点座標の変形 • テクスチャを重みとして、法線方向にオフセット – ポリゴン数が少ないと厳しい • テッセレーションを使う • 事前に割っておく
    8. 8. Displacement Mapping Normal MappingDisplacement Mapping
    9. 9. インタラクティブな草揺れ • 毎フレームテクスチャにデータを格納してやる – 詳しくはサンプルを見つつ
    10. 10. インタラクティブな草揺れ
    11. 11. インタラクティブな草揺れ 揺れ方向マップ
    12. 12. インタラクティブな草揺れ • カメラスペースで揺れ方向マップを生成 – ワールド座標での草揺れ方向を格納 – 毎フレーム減衰させていく • サンプルは各草の中心点 – 頂点ごとに方向がバラつかないようにする – BatchingさせるときはUVにローカル座標を格納

    ×