设为首页收藏本站新闻投稿

MOD中国同盟社

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 688|回复: 2

[讨论] studiomdl的革新改進 [复制链接]

Modchina声望-尊敬

白(小的^_^)

Rank: 7Rank: 7Rank: 7

帖子
338
精华
0
声望
3495 点
金币
575 Mold
被赞许
27 次
注册时间
2008-1-13

可爱小猫

发表于 2011-2-16 19:43:13 |显示全部楼层
摘自http://www.modchina.com/home-space-uid-17626-do-blog-id-107.html

HL mdl正面臨一場革新。

所謂的最新的mdl其實是Jed放出來的DoD1.2的,但沒有源碼;V社老版的破編譯程式studiomdl我能拿到的最新源碼仍然是HLsdk2.3的,其編譯CS1.6這種9-way blending的人物模組時會出錯的BUG我貌似已修正。

現面向全站網友尤其是模組修改者收集HL1 studiomdl的整改建議,複雜的功能或算法我個人水平有限、引擎限制做不了,但一些小特性或許還是能給各位大大們提供的。


已實現的特性:

@申請256MB的Heapsize/Stack及12MB的FILE_BUFFERSIZE
studiomdl是個C程序,用了很多靜態數組,它們的運算是在堆棧區進行的;寫文件的緩存增大到12MB,足夠大了。不支持9-way blending的BUG應該是解決了。
注意:内存和虛擬頁面可用空間不足256MB的,程序一般都會出錯,沒出錯算你RP好。

@允許模組含有高達20万個三角形面
老版編譯器不允許超過2万面,現在擴展到20万面,應該能夠應付日常需要了吧。其實還可以更高,但需要編譯器申請的空間也更大,還是算了吧。除非誰有特殊需要,非要搞那麽高的面數。

@更多的材質渲染屬性組合
仿照DOD1.2添加了$texrendermode "???.bmp" "???",不同的是允許材質屬性復合,因爲引擎對各種渲染屬性是完全支持相互疊加的。現有的屬性標簽包括:"flat" "chrome" "bright" "additive" "masked" "water" "alpha";目前的引擎僅對"additive" "chrome" "masked"這三种標簽支持,其他類型都是引擎預留未用的。據説V社將在2756年7月56日添加對其他屬性的支持,我們先做好准備,然後拭目以待。
例如:$texrendermode "复件 e134141a.bmp" "additive" "chrome" "masked"






@UV可以小於0或大於1
老版編譯程式qc中不管是否加$cliptotextures,UV都被強制限定在[0,1]的範圍;
此限制已打破,今後你們再也不需要把界外的UV手動往裏拖動或延展貼圖,一個面完全可以實現紋理平鋪。
$cliptotextures如果不寫,對貼圖和UV的處理仍與原來相同;如果加$cliptotextures,UV可越界。四種情況見參考圖示:

http://www.modchina.com/data/attachment/album/201102/16/190827du5i9h9z97uj7j9v.jpg(有變動的僅是左上方的一種情況)




@單個smd可以容納更多的法綫
老版程式僅允許一個smd中最多2047條法綫,但實際上引擎支持的數量比這個值大,
編譯時分smd不夠精細,未收到“Too many vertices”的提示,卻因爲“Too many normals”而終止?
大丈夫だ,问题ない!現在你就是每個smd都多搞一千條法綫也能輕鬆通過編譯,分smd會輕鬆~

注意:單個smd仍然不允許頂點數超過2048,受引擎限制。




@可以取消法綫在編譯時強制歸一化 優化法綫合併判據
老版編譯程式讀取法綫xyz后對其歸一化(標準化,把矢法化長度為單位1),
因爲它可能是想簡化法綫合併時計算夾角的代碼長度;
大丈夫だ,问题ない!學過中學數學的應該都知道求兩向量夾角完全沒有必要標準化~
其實法綫是有長度概念的。
$nonormalize新參數:不對法綫進行標準化,保留其原來的長度。相應的法綫合併判據也不同,不僅比較夾角,也比較長度,近合併等長、近似共綫的法綫,支持-a 0.0的運行參數,一般可保留全部法綫數據。


@允許對所有法綫整體放縮、旋轉
改法綫可刻意營造一些效果,法綫長度與模組明暗對比度正相關,
可以增長__法綫長度來模仿toonshader的渲染效果;
法綫置零則可實現絕對無凹凸感,可與插件軟体結合設置特殊的RenderFX來模擬卡通高亮而不必擔心會出現身體某些部分有時會發黑;
甚至可以逆轉法綫、旋轉法綫,對模組形體感進行特殊的光影表現、甚至是逆光影的奇異陰森感!
$normaltrans ax ay az theta gain
以原點為中心,將所有法綫繞軸(ax,ay,az)旋轉theta角度並增益gain倍(保角變換)。

……

摘自http://www.modchina.com/home-space-uid-17626-do-blog-id-107.html

使用道具 举报

Rank: 7Rank: 7Rank: 7

帖子
1847
精华
2
声望
10644 点
金币
2013 Mold
被赞许
28 次
注册时间
2006-3-16

模界神人奖

发表于 2011-2-16 20:01:31 |显示全部楼层
又发一遍?????

使用道具 举报

Rank: 5Rank: 5

帖子
721
精华
0
声望
1130 点
金币
302 Mold
被赞许
5 次
注册时间
2010-7-14

可爱小猫

发表于 2011-2-16 21:32:34 |显示全部楼层
我好像看過這篇文了...
聽3d說...應該是有人發過了
http://zone.modchina.com/?fromuid=83888

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

回顶部