1. 程式人生 > >AS3語法和UNITY C#語法的異同

AS3語法和UNITY C#語法的異同

AS3 UNITY

Sprite a = new Sprite();

trace(a.paent);

此時a.parent為null,還未AddChild到螢幕上,

一般用這個來判斷在不在螢幕上

 GameObject a = new GameObject();

 print(a.transform.parent);

此時為null,證明和螢幕的Root元素平級,

此時已在螢幕上(在不在攝像機視野內另算)

UNITY只要new出來就在螢幕上了

 super

呼叫父類的方法

 base

 Function a;

函式引用

Func<T> a 或 Action<T> a 
 mouseEnable = false  RaycastTarget = false

------------------------------ U3D面試題 ------------------------------

最近面的一家

給一個三角形面上的三個點,確定法線

用點積,

A-B得出向量,A-C得出向量,兩個向量點積一下

說出漫反射和高光公式(這些都屬於經驗模型)

答: 漫反射

dot(表面法線n,光照方向l)

pow(dot(表面法線n,反射方向r))光澤度

UNITY和安桌專案混合,怎麼弄

 匯出安桌工程,安桌啟動UnityPlayerActivity

說出Activity的生命週期

四元數

 旋轉範圍 -1 - 1

旋轉二週

網易杭州

主要問的幾個問題,個人看來還是很基礎的,不過本人好像有幾個也沒答到點子上

 後面一些難度高的問題選擇了退縮,目前看來很不智,以後要吃掉面試官~

面試的一些基礎題 一定要答對,

關於介紹自已做過的專案,一定要進行事前演練,如何介紹,從哪方面著手

最近二次面試都著重問了UI問題,不知咋回事,咱也就這個重點寫篇文章吧 

開始:

介紹你做的XBOX移植專案

XBOX是微軟推出的主機,XBOX也是一個大型的遊戲平臺,包括XBOX LIVE線上社交服務。

我們做的是一款麻將手遊移植,分為客戶端和服務端二個部分,

整個遊戲改動很大,相當於重做

在開發過程中,根據微軟在XBOX上面的開發規定,必須使用WEB SOCKET,

而原來的遊戲使用的是傳統TCP SOCKET,

再就是畫面使用高質量1920X1080的圖片,加上手柄處理和手遊的手勢,還有帳號登入規則完全不一樣

我做的ASP.NET單點登入SSO伺服器,編寫REST FUL介面,供客戶端呼叫

同時和XBOX LIVE伺服器進行互動,獲取使用者資訊,以JSON格式返回給客戶端,

這一塊用到的包括必須是HTTPS,介面必須REST FUL風格,

在客戶端我這一塊做的是MatchMaking,先到XBOX LIVE後臺配置資料模板JSON,

然後去客戶端建立LOBBY SESSION後,再建立GAME SESSION

然後提交給XBOX LIVE,還有以及QOS之類的流程

比較難的地方在於開發資料較為封閉,只能通過閱讀英文文件來解決問題,

所以我們這個閱讀了大量的英文文件,主要是XDK。 

XDK每6個月會更新一次,UNITY的更新會在2個月後更新,我們只有在4個月的時間內通過稽核,

,所以開發必須要跟得上微軟的步伐

 這個專案開發了一年半

介紹你的HOLO博物館藏書系統

主要是對空間掃描和空間錨點的應用

框架方面用的是多場景載入,.unity場景載入用的是一個非同步方法 SceneManager.LoadSceneAsync

 這個框架在場景瀏覽中,可以向前,也可以後退,只要輸入場景名字就可以了

 因為是框架,因此對場景的命名有一定的規定

在展櫃中虛擬出各種書,並且可以彈出視訊介紹

這個專案開發了三個月

1.UNITY中協程的理解,和執行緒的區別


區別?效率吧,沒有執行緒的切換


我的理解協程就是一個timer或setTimeOut,它是相當於模擬一個執行緒,但它不是執行緒

執行緒有上下文切換,會有效能上的開銷,並且在工作執行緒中是訪問不了UI執行緒中的使用者控制元件的,

協程則沒有這個限制,協程很好的解決了多執行緒的複雜性和效能上的問題,(執行緒對共享資源的

訪問還要加鎖)


當然答案重點應該是效率

coroutine的實現原理

http://gad.qq.com/article/detail/695

2.委託和事件的區別


區別?有啥區別,委託也是事件嘛


事件就是函式呼叫解藕,一種設計思路


這道題應該答對 了

3.UNITY程式資源熱更新?


AssetBundle,它相當於FLEX中的MOUDLE概念,是大型程式中使用的模組概念,

是對資源,指令碼的一種整合打包

4.WWW必須要用到什麼


能用到啥?判斷載入完了就行了唄,是個非同步


要啟一個協程去載入


資源放Resource資料夾裡

 5.說說程式碼驅動和資料驅動

資料就是大資料啦,大資料分析決策,這個是重點

6.說說UNITY NGUI和UGUI的區別

7.UI程式碼網上不是有現成的麼?

恩,可以用,有的只能做參考,有的是收費的哦

但某些UI有的會在效能方面造成影響

舉例子,比如說玩家人物頭上的血條

如果用遮罩動畫實現的話,效果很棒,美術弄起來很方便,程式直接用就可以了,但是幾十個玩家在螢幕上,就卡了

這種實現方式在大型遊戲裡面就沒有義,所以我是選擇了拉伸血條的SCALE+重設座標實現的,效能很OK,效果稍差但經過一些調整,專案總監可以接受

再比如說玩家頭上的聊天框,涉及一個圖文混排,那麼我採用的新的文字引擎系統,速度比原來快十幾倍,網上那些都是在新文字引擎沒

出來之前的解決方案,使用的話,雖然效果可以達到 ,但是很佔用CPU,

8.說說頁遊戲的A星尋路演算法

就是一個估價函式,

可以預先在地圖上提高格子的權值,

或一次搜尋到一半(一定數量)即可開始移動

相關推薦

AS3語法UNITY C#語法異同

AS3 UNITY Sprite a = new Sprite(); trace(a.paent); 此時a.parent為null,還未AddChild到螢幕上, 一般用這個來判斷在不在螢幕上  GameObject a = new GameObject();

linux彙編工具之GAS(AT&T 語法)NASM(Intel 語法)比較

前言:在學校時,學過的彙編是Intel語言的彙編,編譯器是MASM,使用的是DOS系統。慚愧的是那時沒有對組合語言有較深入的研究,有許多問題也不慎瞭解,迷迷糊糊至今。最近,在看《使用開源軟體-自己寫作業系統》http://code.google.com/p/writeos/

C/C++語法用法技巧(指針)

lin 調用 comment c/c++ line x11 space cti 用法 void * fun( ) ; //聲明一個返回值是任意類型的指針 的函數fun() void vfun( ) ; //聲明一個沒有返回值 的函數vfun() void (*)

對比下小程式語法Vue語法異同

對比之前瞭解過的Vue,方便加深 瞭解微信小程式語法。 下面從幾個方面介紹Vue和小程式 一,鉤子函式 Vue只要跳轉新頁面就會觸發鉤子函式,小程式對於不同的頁面跳轉方式,觸發的鉤子是不同的。 下面簡單說幾個小程式鉤子函式 onLoad  頁面載入時候用,一個頁面呼叫一次。 onShow

C#語法中一個問號(?)兩個問號(??)的運算子的含義區別

轉:http://www.cnblogs.com/xpvincent/p/9516708.html   (1)C#語法中一個個問號(?)的運算子是指:可以為 null 的型別。  MSDN上面的解釋: 在處理資料庫和其他包含不可賦值的元素的資料型別時,將 

C#的簡單語法初始化器

程式碼如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sy

C#語法中一個問號(?)兩個問號(??)的運算子是什麼意思?zz

1)、C#語法中一個個問號(?)的運算子是指:可以為 null 的型別。  MSDN上面的解釋: 在處理資料庫和其他包含不可賦值的元素的資料型別時,將 null 賦值給數值型別或布林型以及日期型別的功能特別有用。例如,資料庫中的布林型欄位可以儲存值 true&nbs

c++ 11 陣列 lambda表示式 語法 / 函式包裝器 基本用法

//倒敘遍歷陣列並輸出  // []裡面的變數可以當做返回值來理解 (int x) 這裡就是每次迭代器的值,也就是陣列的元素的值 void main() { array<int, 5>

Objective-C語法之NSSetNSMutableSet

NSSet和NSMutableSet是無序的, 但是它保證資料的唯一性。當插入相同的資料時,不會有任何效果。從內部實現來說是hash表,所以可以常數時間內查詢一個數據。 ps: 散列表(Hash table,也叫雜湊表),是根據關鍵碼值(Key value)而直接進行訪問的資料結構。也就是說,它通過把

轉貼(天極論壇):vb.netc#語法比較

1.變數聲名 C# 語法 int x; String s; String s1, s2; Object o; Object obj = new Object(); public String name; VB語法 Dim x As Integer Dim s As String Dim s1, s2 As S

Unity3D C#語法之==!=運算子過載

前言 在編碼中,為了提高程式碼的可讀性,我們常常會去過載運算子以封裝一些運算,良好的運算子過載,能夠極大的提高程式碼的可讀性。本文會講==以及!=運算子過載。 過載函式 在C#中,過載的時候需要使用operator關鍵詞來宣告: public s

Xml一(基本語法約束)、

字符 一行 語言 oca cas 書寫 xsd ati 寫法 XML:eXtensible Markup Language 可擴展標記語言 version="1.0"     * 可擴展:所有的標簽都是自定義的。     * 功能:數據存儲     * 配置文件  

Java進擊C#——語法之多線程

明顯 源碼 max 更多 sta 關於 如何使用 關系 中文 本章簡言 上一章中筆者對C#一些獨有的語法點進行講解,相信也可以看C#的一些神奇之處。那麽本章主要是放在多線程這方面的知識。不管是C#還是JAVA在開發過程或多或少都會用到關於多線程的編程。當然筆者不

Java進擊C#——語法之ADO.NET

parameter stmt 深入 真的 讀者 方式 對他 新建 文本 本章簡言 上一章講到關於C#語法的基礎部分。了解相關的基礎部分之後我們就要去了解一下C#是什麽樣子訪問數庫的。C#把訪問數據庫這一部分的知識點叫作ADO.NET。即是JAVA常常講到的JDB

robots.txt的語法寫法詳解

html txt 訪問 isa 字符 包含 all 屏蔽 有道 robots.txt是一個純文本文件,是搜索引擎蜘蛛爬行網站的時候要訪問的第一個文件,當蜘蛛訪問一個站點時,它會首先檢查該站點根目錄下是否存在robots.txt,如果存在,搜索機器人就會按照該文件中的內容來確

花了兩天時間學習了 sass, less, stylus的基本語法簡單使用, 談談感受.

列表 stylus 單點 blank 明顯 一點 css 自動編譯 數據 花了兩天時間學習了 sass, less, stylus的基本語法和簡單使用, 談談感受. 1. 變量的問題 1.1變量的表示 sass有個$var, [email protected]/

Kotlin基本語法使用

activit ext eset ans 默認 構造器 span 變量 tag Kotlin 是一個基於 JVM 的新的編程語言,由 JetBrains 開發。與Java相比,Kotlin的語法更簡潔、更具表達性,而且提供了更多的特性。 Kotlin是使

Java與C++語法的區別

有變 程序 mda 一次 高層 修飾 int 屬性 代碼 1. 註釋可以在Java程序中起到文檔標記的作用 類文檔標記: 1)@version 2)@author 3)@param 4)@return 5)@exception 2. Java的字符占兩個

Unity 5實戰 使用C#Unity開發多平臺遊戲pdf

name clas position ati 下載地址 組件 inspector ins over 下載地址:城通網盤 作者簡介編輯 Joseph Hocking是一位交互式媒體開發方面的軟件工程師。他就職於Synapse Games公司並在芝加哥哥倫比亞學院教授遊戲開發

C#語法基礎之第三節

blog ons code pre convert 使用 自動類型轉換 自動 double 1、類型轉換:   1-1:對於類型兼容的兩種類型之間進行轉換:       大轉小:強制類型轉換 (int => int(double))       小轉大:自動類型轉換