這幾天研究了下wooyoogame的技術,這個網站的3d顯示實現貌似很簡單的樣子哦,我做了個簡單的教程給大家
里面的腳本感覺也不難,有點想json的樣子,靠配置就可以做出顯示了
先到http://www.wooyoogame.com?sp=209 注冊一個賬戶,然后點擊游戲開發(裝個插件)就可以寫腳本了
1.導出模型(記得要調整下比率單位1為1米),不然模型會超大或超小

2.將導出的obj模型和紋理圖片上傳到平台中

3. 在ide里面讀取模型和創建出模型
LoadModel("testMdl",":/tiantian/orge.obj","obj"); Create( { type:"mesh"; model:"testMdl"; });
顯示效果如下

4. 讀取模型diff紋理文件
clear(); LoadModel("testMdl",":/tiantian/orge.obj","obj"); LoadImage("bodyImg",":/tiantian/body_dif.jpg"); LoadImage("weaponImg",":/tiantian/weapon_dif.jpg"); Create( { type:"mesh"; model:"testMdl";//模型信息 Geometries: { {index:0,texture:"weaponImg"};//子模型0設置 {index:1,texture:"BodyImg"};//子模型1設置 }; });

哈哈,現在基本效果出來了,后面就是調整更多的效果了
5. 讀取法線貼圖紋理並且加入更復雜的shader配置
clear(); LoadModel("testMdl",":/tiantian/orge.obj","obj"); SmoothModel("testMdl"); LoadImage("bodyImg",":/tiantian/body_dif.jpg"); LoadImage("body_nImg",":/tiantian/body_nor.jpg"); LoadImage("weaponImg",":/tiantian/weapon_dif.jpg"); LoadImage("weapon_nImg",":/tiantian/weapon_nor.jpg"); Create( { type:"mesh"; model:"testMdl";//模型信息 Geometries: { { index:0; shader: { type:"NormalMap"; Texture: "weaponImg"; normalMap:"weapon_nImg"; }; };//子模型0設置 { index:1; shader: { type:"NormalMap"; Texture: "bodyImg"; normalMap:"body_nImg"; }; };//子模型0設置 }; });

6.有法線的效果了,可以看到獸人的青筋暴起了,現在我們在加入一些細節設置,比如createMipmap來生成mipmap紋理和光的調整
clear(); LoadModel("testMdl",":/tiantian/orge.obj","obj"); SmoothModel("testMdl"); LoadImage("bodyImg",":/tiantian/body_dif.jpg"); CreateMipmap("bodyImg",16); LoadImage("body_nImg",":/tiantian/body_nor.jpg"); CreateMipmap("body_nImg",16); LoadImage("weaponImg",":/tiantian/weapon_dif.jpg"); CreateMipmap("weaponImg",16); LoadImage("weapon_nImg",":/tiantian/weapon_nor.jpg"); CreateMipmap("weapon_nImg",16); Create( { type:"mesh"; model:"testMdl";//模型信息 Geometries: { { index:0; shader: { type:"NormalMap"; Texture: "weaponImg"; normalMap:"weapon_nImg"; Ambient:{0.5,0.5,0.5}; Diffuse: {0.7,0.7,0.7}; Specular: {0.2,0.2,0.2}; }; };//子模型0(武器)設置 { index:1; shader: { type:"NormalMap"; Texture: "bodyImg"; normalMap:"body_nImg"; Ambient:{0.5,0.5,0.5}; Diffuse: {0.7,0.7,0.7}; Specular: {0.2,0.2,0.2}; }; };//子模型1(身體)設置 }; });

大工搞成了,保存腳本就可以生成一個連接,在線就可以看得到
http://www.feekood.com/?path=:/tiantian/ShowOrge.ais
源代碼下載
http://files.cnblogs.com/files/gamemaker/%E6%B3%95%E7%BA%BF%E8%B4%B4%E5%9B%BE%E6%BA%90%E4%BB%A3%E7%A0%81.zip
