[閒聊] 想問一下 c/c++ 如何存取 3dmax 中的物件 ?

看板C_and_CPP作者 (Maxiwill)時間15年前 (2009/10/28 17:16), 編輯推噓9(9022)
留言31則, 6人參與, 最新討論串1/1
各位前輩大家好 小弟一直有個幻想 (?) 是用 c/c++ 存取 3dmax/maya 已做好的物件 用 "某API" 呈現在視窗上 然後進階成為遊戲的物體 想請問各位大大 這個如何做 ? opengl 的書最近才剛開始翻 有點難懂, 想問說, 我要如何才能實做出我的想法 ? 希望前輩能指引小弟一條明路 -- 命運硬要踩,但我拒絕死掉 我就是小強 小強是我的命 但其實交配繁殖子孫無限才是重點 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.125.46.244

10/29 01:19, , 1F
你指的3dsmax 應該只是說mesh file
10/29 01:19, 1F

10/29 01:20, , 2F
你可以google obj file format 有簡單介紹格式
10/29 01:20, 2F

10/29 01:21, , 3F
當然.max (3dsma的檔案) 紀錄的不只這些資訊 還有更多更多
10/29 01:21, 3F

10/29 01:21, , 4F
不過loader一定都可以找的到code 主要是有了這些資訊怎麼秀
10/29 01:21, 4F

10/29 01:22, , 5F
你要用opengl 或dx等都可以render出你要的東西
10/29 01:22, 5F

10/29 01:24, , 6F
我是會建議你看nehe教學 有中文 不過有人說nehe的都太老了
10/29 01:24, 6F

10/29 01:24, , 7F
所以大大的意思是 c++ 能透過opengl的函式庫顯示 mesh?
10/29 01:24, 7F

10/29 01:24, , 8F
不過我認為先建立觀念nehe是個好選擇 不然看code sampler也可
10/29 01:24, 8F

10/29 01:24, , 9F
不是C++透過~~opengl也是用c++寫出來的阿
10/29 01:24, 9F

10/29 01:29, , 10F
用opengl 提供的api 簡單點就搭配glut就可以達到你要的了
10/29 01:29, 10F

10/29 01:46, , 11F
如果要寫遊戲 就啥都不要學 直接跳ogre吧 tutorial慢慢K
10/29 01:46, 11F

10/29 02:05, , 12F
轉去gameDesign版問問如何?
10/29 02:05, 12F

10/29 02:29, , 13F
openscenegraph
10/29 02:29, 13F

10/29 03:03, , 14F
OpenGL只是一個library, 或許可以說它的API define是
10/29 03:03, 14F

10/29 03:04, , 15F
base on C的, 但是說OpenGL用C++寫出來是有一點怪@_@"
10/29 03:04, 15F

10/29 03:04, , 16F
可以說寫C/C++利用OpenGL API/LIB畫出3D的東西來這樣:)
10/29 03:04, 16F

10/29 03:05, , 17F
不過問題主要還是卡在如果解析那些3D軟體建出來的資料檔
10/29 03:05, 17F

10/29 03:24, , 18F
喔 我意思是任何lib api 應該都是C++/C 寫出來的吧???
10/29 03:24, 18F

10/29 03:26, , 19F
應該說是C/C++用的lib api都是C/C++寫出來的?
10/29 03:26, 19F

10/29 03:33, , 20F
不過感覺應該是有辦法別的語言編成C++的lib?
10/29 03:33, 20F

10/29 09:18, , 21F
LIB/API的實作不見得要由C/C++實作出來, 而且以OpenGL來
10/29 09:18, 21F

10/29 09:19, , 22F
說, 它規範的是3D Rendering的流程與各個步驟的細節, 實
10/29 09:19, 22F

10/29 09:20, , 23F
作則是各家Gfx vendor以driver組合命令下給HW去畫; 當然
10/29 09:20, 23F

10/29 09:21, , 24F
以MS Win平台來說, 也有基本的一部份是由MS提供實作的.
10/29 09:21, 24F

10/29 09:22, , 25F
API的define是base on C沒錯, 但是實作沒有必要非要由C
10/29 09:22, 25F

10/29 09:23, , 26F
或C++來實作, 我想也不是全世界程式都是C/C++來寫的吧:)
10/29 09:23, 26F

10/29 09:24, , 27F
舉個例子, 有個有名的OpenGL SW Renderer叫做Mesa, 把MS
10/29 09:24, 27F

10/29 09:25, , 28F
的opengl32.dll換成它的, 就是一套SW OpenGL了, 那只要
10/29 09:25, 28F

10/29 09:26, , 29F
有人想, 寫個VB, Java, Pascal的版本出來也不是不行吧@@
10/29 09:26, 29F

10/29 09:29, , 30F
PS. 不要把C/C++的.lib與Open Gfx Library的LIB搞混囉XD
10/29 09:29, 30F

10/29 11:44, , 31F
回應原題...請找關鍵字「lib3ds」
10/29 11:44, 31F
文章代碼(AID): #1Aw7nb_w (C_and_CPP)