3ds模型 單模方陣(一模多用)

2021-08-15 10:53:16 字數 1183 閱讀 3009

現在來試試同乙個模型在多處顯示。在《opengl讀取3ds檔案顯示 + 螢幕虛擬球旋轉》的基礎上加減。

一些全域性變數:

#define genum 100 //顯示數量,可以是任意的(簡單一點,不顯示零頭)

typedef struct _boxbian //外框邊界

boxbian;

boxbian it;//模型邊界

函式 getbian 放到初始化中:

it=getbian(&gothicmodel);//獲得模型外框邊界
函式體:

//獲得模型外框邊界

boxbian getbian(t3dmodel *model) }

//顯示最小最大值

printf("xmin:%f,xmax:%f\n",xmin,xmax);

printf("ymin:%f,ymax:%f\n",ymin,ymax);

printf("zmin:%f,xmax:%f\n",zmin,zmax);

boxbian bian;

bian.xmax=xmax;bian.xmin=xmin;bian.ymax=ymax;bian.ymin=ymin;bian.zmax=zmax;bian.zmin=zmin;

return bian;

}

渲染模型方陣:

void drawdsmatrix(int ge)//方陣		}

}

在顯示中替換:

//drawmodel(gothicmodel, true, false);//繪模型

drawdsmatrix(genum);

效果圖:

3ds模型 流動的雲

在 pudn.com opengl sky 中找來sky.h 和sky.cpp 這個叫天空球,或叫天空穹,頂的 把它加到我們的場景中,為了匹配我們的程式,部分 需要修改.修改後的sky.h sky.h csky 類介面.if defined afx sky h f6c8078a 2217 4f98 ...

3ds模型 光照開關選單

由於顯示效果不理想,現在來試試開啟 和關閉光照效果有什麼區別。加上選單 glutcreatemenu menuproc 選單 glutaddmenuentry 開啟光照 1 glutaddmenuentry 關閉光照 2 glutattachmenu glut right button 關連到右鍵 ...

匯入3ds模型的注意事項

今年年初的時候參加了imagine cup,發現那時候留下來的小模型真是好用。哪兒都能用,都不用重新做了 這次的動畫大作業我也打算把它們拿出來show一下,不用白不用。關於opengl匯入模型,雖說理論上來講什麼格式的模型都ok,只要你知道它們的儲存結構。但實際上現在用的最多最常見的還是匯入3ds格...