【Vega Prime】000 - 初探Vega Prime
生活随笔
收集整理的這篇文章主要介紹了
【Vega Prime】000 - 初探Vega Prime
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
VegaPrime 基于VSG(Vega Scene Graph——MPI 公司先進的跨平臺場景圖形API),底層(OpenGL),同時包括Lynx Prime GUI (用戶圖形界面)工具,讓用戶既可以用圖形化的工具進行快速配置,又可以用底層場景圖形API 來進行應用特定功能的創建。它將先進的功能和良好的易用性結合在一起,幫助用戶快速、準確地開發實時三維應用,加速成果的發布。基于工業標準的XML 數據交換格式,能與其它應用領域進行最大程度的數據交換。
針對用戶特定要求,VegaPrime 還設計了多種功能增強模塊,和VegaPrime 結合在一起,更進一步提升了應用開發的效率和適用性。
?????? 寫作本文,主要是為了學習Vega Prime的基本使用,對VP的具體內部原理,不會過多的深入探究。
1、VP的hello world
VP提供了acf文件的編輯功能,通過該功能,用戶可以通過在acf文件中的編輯,完成場景的選擇、需要加載的模型的初始位置和姿態的定義、程序所需要用到的模型的加載等功能;然后,用戶通過編寫代碼,在程序中控制VP內核加載該acf,并進行渲染,完成場景的呈現。
1.1 編輯acf文件
?????? 雙擊運行LynX Prime 3.0后,系統會自動新建一個默認場景的acf文件。直接將這個文件保存,作為我們初探VP世界的入口。
1.2 編寫代碼加載acf文件
#include <vsgu.h> #include <vp.h> #include <vpApp.h> #include "vuAllocTracer.h"int main(int argc, char *argv[]) {vuAllocTracer tracer;// 初始化VP環境vp::initialize(argc, argv);// 創建vpApp類實例vpApp *app = new vpApp;// 加載acf文件if (argc <= 1)app->define("vp_simple.acf");//注意此處為acf文件路徑elseapp->define(argv[1]);// 設置app對象屬性app->configure();// 進入主渲染循環,主線程會被阻塞在這里app->run();// 釋放VP中對象的資源app->unref();// 關閉VPvp::shutdown();return 0; }1.3 運行效果
?????? 程序編譯運行之后,會有兩個窗口,一個是console窗口,另一個為渲染結果顯示窗口。
圖1 console窗口
圖2 渲染窗口
????? Vega Prime的Hello World已經完成。程序的分析根據代碼中的注釋理解即可。
總結
以上是生活随笔為你收集整理的【Vega Prime】000 - 初探Vega Prime的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 中兴笔试选择题
- 下一篇: SIO_KEEPALIVE_VALS 用