zoukankan      html  css  js  c++  java
  • Terrain

    1. To create a flat terrain, just set the y coordinate to 0

    2. The vertices in D3D must be defined in clockwise order. see the picture below

    terrainCell1[1]

    so, when you specify the two triangles, you should say, (v0, v1, v2) and (v0, v2, v3), this is the clockwise order, otherwise, the triangle will be culled, and you will see nothing!

    3. For any texture the UV co-ordinates are 0,0 for top left and 1,1 for bottom right

    4. By default, the D3DXCreateMesh function only support 16bit-indices, that’s to say, you can’t create a terrain with more than 65535 faces, see the first parameter of this function, in order to create a large map, you need to specify the D3DXMESH_32BIT filed, like the following

    D3DXCreateMesh(numTris, numVerts, D3DPOOL_SCRATCH|D3DXMESH_32BIT, elems, gd3dDevice, &mesh) ;
     
    and the index buffer must be defined with type DWORD, like
     
    DWORD* k = 0;
    HR(mTerrainMesh->LockIndexBuffer(0, (void**)&k));

    5. A normal for a vertex is generated by averaging the normals of all faces that share that vertex.

  • 相关阅读:
    从FxCop归纳出来的一些规范建议
    UML用例建模的慨念和应用
    Android 截屏脚本
    悲剧的账户绑定与通讯录丢失实录
    文件分享功能实现
    Java字符串与整数之间的互相转换
    关于大的Bitmap保存问题
    将程序关联成Android系统默认打开程序
    关于Android应用多语言支持实现
    关于通过getWidth与getHeight获取bitmap​的尺寸与其实际尺寸不符合问题
  • 原文地址:https://www.cnblogs.com/graphics/p/1723082.html
Copyright © 2011-2022 走看看