Skip to content
Yaochuang edited this page Nov 30, 2017 · 33 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.

Coding issue

Data type

HRESULT DirectX::CreateWICTextureFromFile( ID3D11Device* d3dDevice,
                                       ID3D11DeviceContext* d3dContext,
                                       const wchar_t* fileName,
                                       ID3D11Resource** texture,
                                       ID3D11ShaderResourceView** textureView,
                                       size_t maxsize )

This API does not support HDR format. XMMATRIX definition

union
{
    XMVECTOR r[4];
    struct
    {
        float _11, _12, _13, _14;
        float _21, _22, _23, _24;
        float _31, _32, _33, _34;
        float _41, _42, _43, _44;
    };
    float m[4][4];
};

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

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?

Shading Model

Phong Shading

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

Clone this wiki locally