Flutter 3D繪圖初探


Flutter SDK目前沒有專門針對3D圖形繪制的API模塊,當然提供3D API也在Flutter的長期計划中,目前還主要是集中在2D圖形上,官方FAQ也對這一點進行了說明。

 

通過查找資料找到一些現有的Flutter 3D繪制方面的內容。

Canvas繪制3D圖形

不使用GPU和OpenGL ES,在已有flutter SDK功能基礎上,可以借助CustomPaint widget和Canvas結合Vectors來實現對obj標准3D模型的繪制,進而結合GestureDetector利用手勢拖拽來transform改變和刷新3D圖像,這是比較原始的方法。
實例1:https://github.com/RichardCubed/flutter_demo_3d

實例2:https://github.com/klaszlo8207/Flutter-OBJ-3D-Viewer

借助第三方插件Unity3D 

可以使用Flutter Unity Widget插件在flutter應用中嵌入Unity3D引擎視圖來展示3D圖形。可以使你的應用程序具有Unity的精彩的游戲化功能,在Android和iOS上都很好用。
相關的項目如下:
https://dreamsoftin.com/
https://github.com/snowballdigital/flutter-unity-view-widget
https://github.com/juicycleff/flutter-unity-arkit-demo

 

Flutter Web端使用Three.js

關於Web端實現3D效果,難免要想到Three.js。
https://github.com/rodydavis/FlutterWebXRThreeJS展示了一個Flutter Web結合Three.js的例子,在線效果地址https://rodydavis.github.io/FlutterWebXRThreeJS/#/

參考:https://www.bilibili.com/read/cv5353785


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM