不知不覺都4月底了,4月有不少其他事耽擱了不少時間,現在進度還是慢了啊。。。55555。
之前考慮到geomipmap地形需要渲染管理和加大尺寸,把上次的直接多次建立幾個後效率就不行了,優化的不好啊。當時想用四叉樹做場景管理的,但當時寫時沒注意有個嚴重的bug,所以考慮直接採用四叉樹lod地形。
這個在上上個星期弄好了,但效率還是太低了,因為作為三角傘形渲染dp呼叫次數太多了。考慮優化,但不知道為什麼dip繪製三角形列表總不對(索引沒問題)。心情那個鬱悶啊~~~,決定放棄。
於是考慮採用《遊戲程式設計精髓6》上的gpu地形,其實本不想使用shader的,感覺太複雜麻煩了,哎,沒辦法。
《遊戲程式設計精髓6》上的gpu地形,採用抗裂縫的方法是「群擺」,我採用的和我以前geomipmap地形解決裂縫方法一樣「頂點移除」,所以與書上不同的需要16個索引緩衝,對應4個方向銜接。每個塊還是17×17大小,而整個地圖的解析度為2049×2049。但有點不足的是相同細節級別的塊之間鏈結也會被移除掉,這應該是更新四叉樹更新後獲取相鄰資訊不足造成的,現在只用了乙個bool儲存塊是否細分,如果儲存有具體細節級別就ok了。^_^
我這個解決裂縫的方法需要知道鄰接塊的「細分」狀態,在更新時採用廣度優先方式只需一次,避免深度優先需要2次更新4叉樹。
現在把視錐體裁剪完成了,每個塊的高度是其自身最大最小高度,而書上的是整個地圖的最大最小,發下效果圖。嘿嘿 ^_^
被放棄的四叉樹地形雙色圖效果,粉紅色是最高細節,紫色是普通的。
上面個圖的網格
gpu地形俯視剔除的視點效果。
上圖的網格,可以看到塊和塊的鏈結處使用頂點移除。
俯視剔除效果,其他視點觀察效果,剔除不錯,呵呵
仰視剔除效果,視點觀察的效果。
上圖的網格
仰視剔除效果,其他點觀察效果
未做視錐體剔除效果的,看culled就能區別出來了(culled顯示的是剔除多少個17×17的塊),同時三角形明顯增加,具體每幀渲染的三角數目需要乘以每幀時間。
畢業設計!畢業設計!!畢業設計!!!
看到ceocio的帖子 嚇人哦 深有體會。進幾年有些本科學生的程式與 實在不象話。有的組的答辯問題簡直成了挑錯字,平均每頁都有錯字。有的組在資料庫設計時,姓名 身份證號 手機號 日期全部都用char 10 答辯時還振振有辭,說在做測試時僅僅輸入了些簡單的數字做測試,所以沒有發現問題!還有的學生 是這...
畢業設計 之 初識 高低地形 Terrain
這個世界上沒有偶然,有的只是必然.以前看的動漫裡面的話語 不知不覺就大3了,就要開始最後的畢業設計了,課題選來選去沒什麼適合的,最終選了個 3d遊戲場景demo 估計這個和我們設想的遊戲比較接近吧.首先,想做下高低地形,還好教材書上有例子,也就是 完成的和書上內容一致,並且行走那一部分還沒做,敲了一...
使用springboot完成畢業設計
假設本部落格課題 註冊登入功能,這裡只實現登入 spring.datasource.url jdbc mysql spring.datasource.username root spring.datasource.password 123456 spring.redis.host 127.0.0.1...