Skip to content

Tessellation

Yaochuang edited this page Dec 11, 2018 · 3 revisions

Welcome to the GraphicsCollection wiki!

Utah-teapot tessellation

Utah-teapot was created in 1975 by early computer graphics researcher Martin Newell, a member of the pioneering graphics program at the University of Utah. In this demo is composed of 32 Bezier Patch. Each Bezier Patch was controlled by 16 control points. I used GPU tessellator hardware to evaluate on quad domain and generate triangle list.

Tessellate Bezier Patch

tessellate bezier patch

DirectXMath

Data type

Misc

  • HRESULT DirectX::CreateWICTextureFromFile(), This API does not support HDR format.
  • HLSL's keyword row_major and column_major dertermines how to intepret the fetched data in constant register.
    • column_major is the default option for matrix in hlsl.

Tools for environment map

Shading Model

Phong Reflection Model

phong reflection model formula:
phong reflection model

reflection vector calculation:
reflection vector calculation

parameters for Phong Shading Model

as1 -ka 0 0 0 -kd 0.55231 0.232 0.5612 -sp 30 -ks 0.262344 0.623421 0.1233 -dl -0.5 0.1234 -0.42 0.235 0.263 0.5 -pl 1.512 1.123 1.132 0.125 0.643 0.6423 -dl 0.125 0.125 0.125 0.125 0.125 0.125 -dl 0.6423 0.346 0.634 0.124 0.623 0.623 -dl 0.12312 0.512 0.1231 0.1231 0.123 0.5612 -dl 0.125 0.1245 0.321 1 1 1 -pl 1.512 1.3123 1.312 0.123 0.6236 0.623 -pl 1.1236 1.1236 1.6234 0.23460 0.3462 0.2346 -pl 1.2346 1.6342 1.423 0.123 0.632 0.6432 -pl 1.1236 1.6423 1.6423 0.123 0.632 0.6432

Refrence

DX11 Tessellation

  • The domain shader runs once per vertex and calculates final vertex's position & attributes.
    • It receives the UVW from the fixed function tessellator, SV_DomainLocation.
    • It receives the control point outputs from the hull shader.
  • Hull Shader need to calcualte the tessellation factor perpatch
    • SV_TessFactor
    • SV_InsideTessFactor
  • How does HW Tessellator work ?
    • How to insert new vertex and keep topology ?
  • In DirectX 11 Tessellation pipeline
    • It's domain shader's responsibility to calculate final attribute of each vertex.
      • SV_POSITION
      • Other vertex attributes

Materials about Param Surface & HW Tessellator

Overall Questions

  1. discontinuities along the cube face edges in cubemap produces a hard seam artifact. So Why don't use spherical map?
  2. What is the highest format of texture supported by latest GPU hardware, 16-bit/channel? 32-bit/channel?

Refrence

Clone this wiki locally