求思路如何用NGUI實現類似iBook的翻頁效果?

用NGUI實現類似iBook的翻頁效果,如下圖


https://i.gyazo.com/f79669bae4af7e6d0675e0168ea30d3e.gif

參考megabook插件,用UGUI重寫了遍

大概的思路就是當翻頁的時候,截屏畫到RawImage上,然後用UGUI的vertex modifier填入自己生成的頂點,形成翻書的樣子...

和原來的相比好處是,不翻書的時候就完全不用RT,直接當正常UI用了……

========== 分割線 ==========

我是用骨骼動畫配合render texture做的...

或者你可以直接人肉操作Mesh,完成這樣的動畫效果...


實現不了 之前做了個小項目 裡面用的是序列幀

當然也可以考慮實體模型貼圖,圖量小點,不過抗鋸齒要考慮進去


我的想法跟 @錢康來是一樣的,這裡我再給你幾個具體的原理及實現鏈接:

Implementing iBooks page curling using a conical deformation algorithm:

http://wdnuon.blogspot.hk/2010/05/implementing-ibooks-page-curling-using.html

The anatomy of a page curl

The anatomy of a page curl - Chris LukeThe anatomy of a page curl - Chris Luke

Unity 翻書效果

http://blog.csdn.net/bigpaolee/article/details/47626187


做一個翻書的骨骼動畫,把你的ui render to texture,然後貼到翻書的模型上。


用建模軟體細分面之後做動畫就可以了。


可以實現很生硬的垂直翻頁效果,圖上的摺疊彎曲沒法實現,這種已經不是ui動畫了


說骨骼的都是錯誤的,骨骼不是實時的。我做過一款和iBook一樣的,性能非常高,就差滑鼠拖動事件了。有於最近工作事情忙。沒時間完善。現在可以任意角度翻頁。也是用NGUI做的。等後面有時間加上滑鼠事件,效果就跟iBook一樣。

最近很忙。先上效果圖。


推薦閱讀:

請問為什麼Unity3D使用mono做為跨平台解決方案?
C# 如何進階?
Unity中打包Texture到AssetBundle反而比原資源jpg格式還要大,該怎麼減小空間?
我是否該踏入遊戲行業?
如何評價Unity5中多人遊戲和網路模塊UNet?

TAG:遊戲開發 | 圖形用戶界面 | Unity遊戲引擎 |