想要以後為 HoloLens 開發應用的話,現在應該預備哪些知識?

高手達人們畫一畫科技樹,技能點應該怎麼點。


讓我腦洞開一會,下面是 YY 時間。

首先,微軟肯定會推出 SDK,標配的語言肯定有 C++ 和 C#,因此這兩門語言你得會一門。

然後,這個 SDK 里有哪些功能呢?我覺得基本功能至少有

  • 攝像頭看到的圖像×2(因為至少是雙目),即當前場景的 color buffer 。
  • 當前場景的深度圖,depth map 或 z buffer。
  • HoloLens 的位置(x, y, z)、朝向(tx, ty, tz)。
  • SLAM 合成後的三維場景,可能是 voxel 表示,也可能是多邊形表示。

  • 手勢識別的結果,類似 HRESULT OnGestureDetected(DWORD dwHandId, DWORD dwEventId, LPVOID lpUserInfo) 的樣子。
  • 語音識別的結果,HRESULT OnVoiceRecognized(std::string strSentence, FLOAT confidence) 的樣子。

這一層就好比 Win32 API,可以直接用來開發應用了,但是特別羅嗦,實現點什麼功能要寫幾千行代碼。想搞點酷炫的場景你需要有 DirectX 的三維開發經驗,想搞點人臉識別你得整合下 OpenCV 庫,怕吧?

不怕不怕 ,微軟肯定會在這基礎上提供傻瓜式的高級 API,到時候都會給大家實現好傻瓜式的 API。到時候你只需要安裝 Visual Studio 2017,新建個 HoloLens Template,選擇 C++ 或 C# 或 JavaScript,點擊下一步,按 F5 運行即可。

微軟的好夥伴 Unity3D 也會第一時間提供插件,插件會長成這樣

2015年5月1號更新,Unity3D 果然支持 HoloLens 露。

或是這樣

總之都是可視化的開發環境,策劃都能玩得轉。

-----------------------------------------------------------------------------------

做下軟廣告,對技術細節感興趣的可以看下我的專欄文章

Microsoft HoloLens 技術解謎(上) - 黑客與畫家 - 知乎專欄

Microsoft HoloLens 技術解謎(下) - 黑客與畫家 - 知乎專欄


按照微軟的尿性我猜你只要能在win32上開發,在hololens上也不會有什麼問題。

目測只要幾個版本之後的API就會包裝的連傻逼都能愉快的用了。根本要不著圖形學方向的知識。


1,Unity基本開發,3D圖形學,一些遊戲開發的基本方法,HoloLens開發,目前主要是在Unity3D平台上面做。所以對Unity3D的熟悉是很必要的。其實HoloLens的開發,在技術上來說,和遊戲開發很接近,基本是一樣的東西,然後加上幾個HoloLens特有的功能。

2,去看官方教程,手勢識別,凝視,以及地形識別三個功能是很重要的。在微軟官方教程裡面前面三課是初級介紹,後面五課程是具體應用,這裡微軟把這些操作封裝成衣系列的ToolKits,很有用處,一定要動手做一吧,幫助很大。最後一課是多台HoloLens共享空間,最有趣。

3 vuforia 要看,這個是微軟官方推薦的,和Unity結合得很好,能幫助HoloLens補充圖像識別的短板。

4 另外兩個東西很容易被忽略,但是微軟這陣子的調查問卷裡面重點提及了,肯定是HoloLens必不可少的知識儲備,一個是高精度模型減面(模型取樣)工具,另外一個是動態圖像(UI)設計,這兩個必然是HoloLens能帶來更大價值的保證。

希望對你有幫助。

在這裡打下廣告。http://ahololens.com

承接一切和HoloLens相關的項目,有需要聯繫我。


這裡給大家分享四部由台灣銘傳大學(Ming Chuan University,MCU)葉正聖老師的HoloLens入門四部視頻教程,葉老師在視頻中分享了工具配置、UNITY初探、UNITY範例、VISUAL STUDIO接入HoloLens設備接入調試等內容,同時分享了很多自學的很多技巧。足夠大家做簡單入門:

  1. HoloLens開發快速上手教程一

  2. HoloLens開發快速上手教程二

  3. HoloLens開發快速上手教程三

  4. HoloLens開發快速上手教程四

本視頻教程獲得葉老師的授權轉載,未經授權請勿轉載!

另外增加兩篇自己寫的教程:

HoloLens開發上手詳細教程之-語音控制-虛擬現實開發者

HoloLens教程二-空間掃描、手勢交互、物體碰撞案例-虛擬現實開發者

HoloLens-Unity 學習筆記1 -- 空間映射(譯)

HoloLens-Unity 學習筆記2 -- 存儲WorldAnchor(譯)


架構和win10是相同的。http://www.wpxap.com/thread-817784-1-1.html看這裡。


Unity3D CV 機器人學 CG ML(模式識別) 這些應該就夠了


首先聲明不是高手

如果僅僅考慮開發技術上,放心就好了。根據微軟的慣例,直接在vs上用c#開發是最可能的(╯3╰)


難道不是C#這門偉大的語言。。。


看了下大家的回答。其實對於這樣的產品。個人覺得還是要看方向性,首先HoloLens發布以後會給開發者提供SDK這些基礎內容只是向核心開發者提供的。大家知道PC遊戲,首先要開發遊戲引擎再開發遊戲。開發者需要確定自己的開發路線,是做比較難的核心程序還是在別人的基礎上開發。核心程序就需要掌握C++或者c#還有就是DX中的HLSL和各種可能是新的圖形API,這些可能都會出現在新的SDK中,來控制新的一些交互設備掌握以上語言。當然前期HoloLens發布以後很多都會利用這些來做開發軟體然後在這基礎上來開發面向使用者的軟體。還有微軟也可能提供新的簡單軟體來提供給開發者方便開發。這類的軟體一般掌握腳本語言就行了。其實和其他以前PC開發是大體相同的,只是多了很多新的交互和感測控制設備,開發核心部分還需要熟悉這些設備。大多開發者可能都不會接觸,只用別人寫好的介面就行。

所以看好自己的開發方向很重要,個人開發就開發簡單的面向用戶的軟體就行。核心軟體一兩個人很難開發。


  • 基礎知識

    • 數學
      • 幾何學
    • 計算機
      • 圖形學
      • 機器視覺
      • 人工智慧/機器學習
  • 語言

    • C++
    • C#
    • 。。。其他兼容.Net的語言
  • 平台

    • 主流3d引擎(Unity 3d, UDK等等)
    • Direct X
    • .Net Framework
  • 相關領域產品
    • Kinect(場景/姿態識別)
    • Oculus Rift(VR)

技能點之外,最重要的是要有佛擋殺佛,見招拆招的氣勢。


看一下微軟官方是怎麼說的:

How do I learn more about designing and developing apps for Microsoft HoloLens?

Microsoft HoloLens runs on Windows 10, so developers building on Windows 10 will already know how to build for Microsoft HoloLens from a platform perspective. Having this same foundation means that developers will be familiar with the tools and benefits of the Windows Store.

The best way to get started is to become familiar with Windows 10 by joining the Windows Insider Program. Next, register for Build 2015. At Build, you』ll learn more about how to get started designing and developing for Microsoft HoloLens, receive details on the SDK, and meet members of our engineering team. If you can』t attend in person, plan to tune in via livestream or check out the recorded keynote and session presentations that will be available after the event.

http://www.microsoft.com/microsoft-hololens/en-us/get-ready

1.HoloLens將運行Windows 10操作系統。所以你開發的只是另一個windows程序而已,根據以往windows強大的向後兼容性來看,開發windows軟體的技能都能排上用場,win10應用開發需要什麼技術,HoloLens就需要什麼,錯不了。

2.今年5月將召開Build微軟開發者大會,屆時會發布HoloLens SDK,介紹開發的詳細細節。SDK嘛這就好說了,你或許根本就不太需要什麼圖形學、計算機視覺等等的基礎,看懂API說明就能幹活了。


做過幾年3D開發,CV,3D建模相關的。

這個東西具備3D開發的技能就ok了,最好具備遊戲3D引擎相關的開發經驗。

如果是有DX和OpenGL開發經驗的人上手會很容易。

具體說來就是C++、DX、OpenGL、圖形學的東西和之下的基礎數學知識。

簡單的羅列下:

懂3D數學,向量、矩陣變換。

3D中的各種位移、各種位置計算、各種坐標系換算。

需要知道頂點、紋理、多邊形。

還有一些3D常用的應用場景:幾何檢測(最近、相交性檢測、可見性檢測、碰撞檢測)、光照、陰影、骨骼動畫、粒子特效。

以及上面常用優化方法,並最終使用C++實現,基礎庫可以是DX、OpenGL、OpenCV。


身為windows 10 app platform的PM特地跑來安利一下UWA:所有hololens app都會而且只會是windows 10 app。這也意味這如果你寫一個windows phone的app或者windows PC的app而且不調用phone或者pc 特定的API,這些app都能在hololens上面運行!當然,之後會有hololens特定的API。但是如果你想開發hololens app的話,完全可以先開始開發universal windows app


幸好c#和java是如此的相似,否則轉過去還真是個問題。


個 人覺得還是要看方向性,首先HoloLens發布以後會給開發者提供SDK這些基礎內容只是向核心開發者提供的。大家知道PC遊戲,首先要開發遊戲引擎再開發遊戲。開發者需要確定自己的開發路線,是做比較難的核心程序還是在別人的基礎上開發。核心程序就需要掌握C++或者c#還有就是DX中的HLSL和各種可能是新的圖形API,這些可能都會出現在新的SDK中,來控制新的一些交互設備掌握以上語言。當然前期HoloLens發布以後很多都會利用這些來做開發軟體然後在這基礎上來開發面向使用者的軟體。還有微軟也可能提供新的簡單軟體來提供給開發者方便開發。這類的軟體一般掌握腳本語言就行了。其實和其他以前PC開發是大體相同的,只是多了很多新的交互和感測控制設備,開發核心部分還需要熟悉這些設備。大多開發者可能都不會接觸,只用別人寫好的介面就行。


Windows 10 app 的相關語言肯定是要的,Holotoolkit起碼要知道如何用,

HoloLens開發手記 這篇帖子也許可以幫到你。


我覺得最重要的首先是你要去體驗那個視界,這樣你才能知道那個視界大致怎麼,你需要去準備些什麼,做些什麼。再者你需要發掘你的創造力,無疑相比於手機,增強現實的對你的創新性想法,設計、體驗都提出了更高層次的需求。然後你再專攻你的設計部分工作。正所謂聞道有先後,術業有專攻。大致的了解全面有助於你針對性發揮。


visual Studio 2015技術預覽版,安裝了,沒有看到相關的hololens的SDK 和API,估計要等到正式版本的VS2015,才會有相關的SDK發布把。


學可以快速賺足夠買一個的錢的知識


推薦閱讀:

如何看待google,firefox,microsoft等公司的刪除賬號功能?
使用1000元左右及以下的Win 8平板是怎樣一番感受?
如何擺脫對Visual Studio的依賴?
如何看待 UWP 獨立開發者作品被官方要求下架?
為什麼小米 4 可以刷 Win10 ?

TAG:微軟Microsoft | 遊戲開發 | 編程 | HoloLens |