2009-07-23 53 views
0

我一直想在這個應用程序工作大約一年了。我想創建一個'激光表演模擬器/編輯器'。我希望能夠在舞臺上的不同位置放置燈光,並且我希望能夠對其中的每一個進行編寫腳本以進行各種操作,例如轉動,以一定的間隔進行和停止,改變顏色等。完全是我的意圖。我有進一步的計劃,編寫一個工具,可以很容易地基於現有的音頻文件(,通常是一首歌曲,當然是)基於某些可以檢測到的信息,如節拍分鐘等等。業餘愛好的建議:激光顯示編輯器/模擬器

我原本以爲在C#和XNA上工作。編輯器當然會包含一些3D視口(也許在Ortho Projection中),有點像我猜想的3D建模工具,但更像是一款遊戲的關卡設計工具,因爲人們可以做的事情數量它將受到限制,例如燈光佈局和財產編輯。

事情是,我從來沒有在3D編程項目上工作過。幾年前,我試圖學習OpenGL(買了很多書,並誠實地讀過它們,但那時我對編程還不熟悉,而且事情根本沒有意義。另外,我不太瞭解數學使用)。我也嘗試學習Managed DirectX,儘管它看起來確實更有意義,但我認爲我沒有學習它的動機,所以我放棄了。

現在我確實有理由去了解它,所以我會很有動力,我相信現在我會理解大部分數學。

但我不知道從哪裏開始。這是我確定需要一段時間才能完成的事情,所以我知道要耐心等待。我想知道你們建議我從哪裏開始。音頻部分,我相信我會留到以後。我猜基礎是渲染引擎和編輯界面,然後是真正的模擬器來播放創建的節目。

因爲我不能把所有事情都納入到一個問題中,所以我會在後面的問題中提出跟進問題。然而,在此期間,我要求一般的基本問題是:

  1. 我應該在哪裏開始呢?我從來沒有做過這麼大的工作,所以我對這個項目中的事情感到不知所措,我不明白我應該從什麼開始。我知道我會先計劃一些事情,但至少我會希望提供一個啓示。我認爲這是渲染引擎。

  2. 這是一個好主意,或者至少可以使用C#和XNA嗎?我對C#非常熟悉,並且我確實嘗試了幾年前學習Managed DirectX,我相信它有點類似。我熟悉用C#編寫.Net的用戶界面創建方面。

  3. 我應該創建自己的渲染引擎還是使用現有的引擎?你推薦哪個?我並不完全有興趣創建自己的引擎,以便我可以學習。我相信我終究會明白髮生了什麼事情,而且我不希望渲染方面成爲障礙,尤其是如果有一些東西已經存在,那將比我能夠在不久的將來創建的任何東西都更好。當然,我仍會嘗試學習XNA;我不會試圖忽略它。

謝謝你們,我真的很感激你們可以提供的任何輸入。對不起,如果我很模糊。我有具體的想法,但我現在想問一般問題,給自己一個方向感。再次感謝。

編輯:我想強調,我有從來沒有從頭開始工作在這種規模的東西。我從字面上不知道從哪裏開始。我從來沒有從事過3D編程,也沒有編輯器需要的複雜用戶界面。我確實有動力和動力去學習和做任何與編程有關的事情,就像我以前向我自己證明的那樣,但是我希望你們能夠提供關於從哪裏開始的任何細節和細節。

例如,你們中的一些人說從渲染引擎開始,但可以提供任何細節?有足夠的免費和/或開源引擎嗎?考慮我在追求的是什麼,有沒有特別的3D主題可以讓我感興趣?例如,我讀過一些激光可能只是帶着色器的3D網格,或者其他的東西,我對3D編程顯然不熟悉。

我不打算購買任何東西,如渲染引擎,至少在不久的將來。如果我這樣做,這將是我有一個核心/基地,我可以工作。

非常感謝你們,除了你們已經做過的一些事情之外,我非常感謝你們能夠提供的任何見解。

回答

2

我對你的項目感興趣,因爲我曾經是一名激光表演設計師和控制軟件開發人員。

首先 - 設計草圖!有趣的是,您正在考慮像渲染引擎這樣的實現細節,但仍然被項目的範圍所覆蓋。只需對一個渲染引擎進行成像即可完成您所要求的任何操作然後,當概念堅定起來,你知道你需要的能力時,你可以購買符合你需求的產品。

如果您不熟悉與激光顯示器相關的系統行爲和用例,我一定會幫助您 - 我會通過電子郵件發送給您。

1

對於第一個3D項目,C#和XNA是一個非常好的選擇。你不必編寫自己的渲染引擎,這是個好消息,因爲它可能非常耗時。但是它缺少GUI工具。還沒有簡單的方法來製作菜單,文本框,標籤等。但是,有一些庫可以幫助您。

我建議你看看Audio support以確保所提供的工具(特別是XACT)足夠用於你想做的事情。

1

根據您所需的激光運動控制,USB微控制器可能更符合您的需求。

這裏是做這樣的事情我最喜愛的USB設備(伺服控制,電機控制,指示燈,模擬/數字I/O等)中的一個:phidgets.com servo kit

跨平臺,優秀的。例如,設置伺服的位置,中途我可以打電話給司機:

servo1.setPosition(50); 

因此,使用C#與XNA這些淨舵機兼容相結合,你可以得到的東西要快!

祝你好運!

+0

太棒了,謝謝。你能修理鏈接嗎?目前我並沒有真正希望做任何事情,但是我希望在將來有一個應用程序準備就緒後,我會在未來的某個時間做到這一點。這確實聽起來很棒,我很欣賞答案。 – 2009-07-26 18:23:53