每日一葷
洞房之夜,新娘已脫一菲全裸。新郎也脫掉上衣、襯衫、領帶,但是到了鞋子的地方就碰到了麻煩,因爲鞋帶解不開,愈弄愈連在一起,新娘着急着說:“真笨,那兒有小刀,用刀了割斷算了!” 新娘的母親爲了要一切是否順利,便在隔壁房間偷聽。當聽到新娘如此說,便大叫“不行!不可以用刀子,”她隔牆說,“告訴他,塗上一些口水,就行了。”
公司一
項目:二次元卡牌養成遊戲,目前有10+人,使用Unity,C#,uLua開發。
1.是否熟悉UGUI,Dotween
2.animator是什麼
3.animation動畫怎麼製作
Animation和Animator 雖然都是控制動畫的播放,但是它們的用法和相關語法都是大有不同的。Animation 控制一個動畫的播放,而Animator是多個動畫之間相互切換,並且Animator 有一個動畫控制器,俗稱動畫狀態機。
(一) Animation模塊
(1)新建一個對象,並且在對象上附加Animation組件;
(2)選中對象,按快捷鍵:ctrl+6 打開動畫編輯器,新建動畫。
(3)播放動畫
void Start (){ _anim = GetComponent<Animation>();if (_anim != null) _anim.Play("Test");}
(二) Animator模塊
(1)新建一個對象,在Unity 編輯器中Window -> Animation 彈出Animation 編輯頁面,新建一個動畫保存。
(2)雙擊.controller這個文件打開Aniamtor 編輯器。
(3)直接運行查看效果
4.協程的實現
StartCoroutine(協程的方法名());//調用方法一StartCoroutine("協程的方法名");//調用方法二IEnumerator 方法名(){ ...yield return new WaitForSeconds();}
5.對x個1-100不重複的整數進行排序
6.static,const,readonly getonly的區別
7.接口和抽象類的區別?
8.如何優化代碼
(1)for循環得到結果記得break或return;
(2)乘法和除法使用移位操作
公司二
C#筆試題(必答題)
1.請簡述類和結構體的區別是什麼?
2.請簡述抽象類和接口的區別是什麼?
3.瞭解設計模式麼?請列出您所知道的設計模式的名字。
4.請簡述什麼是反射?
反射提供了封裝程序集、模塊和類型的對象(Type 類型)。可以使用反射動態創建類型的實例,將類型綁定到現有對象,或從現有對象獲取類型並調用其方法或訪問其字段和屬性。如果代碼中使用了屬性,可以利用反射對它們進行訪問。
5.C#中的委託是什麼?事件是不是一種委託?
委託可以把一個方法作爲參數代入另一個方法。委託可以理解爲指向一個函數的引用。事件是一種特殊的委託
6.try{}裏面有一個return語句,那麼緊跟在try後的finally{}裏的code會不會被執行,如果會,請問在什麼時候被執行,在return前還是後?
7.下面代碼什麼錯?
short sl=1;sl=sl+1;
下面代碼遊什麼錯?
short sl=1;sl+=1;
沒錯,會自動強行轉換
8.一列數的規則如下:1,1,2,3,5,8,13,21,34...,求第30位數是多少,用遞歸算法實現(C#)
public static int Foo(int i)//即定義一個公共靜態函數體,輸入一個整數(第X位數),返回值;{if (i <= 0) return 0;//預防輸入0或負數,輸入則返回“0”;else if (i > 0 && i <= 2) return 1;//如果輸入第1位或第2位,則返回“1”(如題);else return Foo(i - 1) + Foo(i - 2);//輸入其它的數則返回前兩個數的值。注意:因爲求數列中每一個值都是調用該函數,所以求前兩個數的值就又要調用2個這個函數。這就是遞歸(調用自身)。}Foo(30);
Unity筆試題(必答題)
1.Unity3D從喚醒到銷燬有一段生命週期,請列出系統自己調用的幾個重要方法。
2.請簡述Unity3D項目中預製組件上出現數據丟失的原因可能有哪些?
3.Unity3D中的協程(coroutine)和C#線程之間的區別是什麼?
4.編輯器運行時,資源加載的方式有哪些?
(1)通過Resources模塊,調用它的load函數:可以直接load並返回某個類型的Object,前提是要把這個資源放在Resource命名的文件夾下,Unity不關有沒有場景引用,都會將其全部打入到安裝包中。
(2)通過bundle的形式:即將資源打成 asset bundle 放在服務器或本地磁盤,然後使用WWW模塊get 下來,然後從這個bundle中load某個object。
(3)通過AssetDatabase.loadasset :這種方式只在editor範圍內有效,遊戲運行時沒有這個函數,它通常是在開發中調試用的
5.分別解釋這幾個目錄的作用
Plugins:擴展unity功能的插件Editor:主要用來擴展unity編輯器的功能Resources:動態加載遊戲資源到場景中StreamingAssets:存放需要保留原格式的資源
6.寫出Unity釋放資源/內存有關的幾個方法
Lua筆試題(選答題)
0.有一個table t,請簡述t.x和t[x]的區別是什麼?
1.內存優化
2.關閉一個界面的方法
隱藏,銷燬,移到屏幕在,設置攝像機的渲染層級
3.卡頓怎麼解決,比如揹包系統有3000個物品,用戶操作會很卡,怎麼解決
公司三
1.OneEnable,Awake,Start,Ppdate,FixedUpdate,LateUpdate的執行順序,作用,執行次數。
2.移動/旋轉的快捷鍵
W/E
公司四
線上筆試
1.OnEnable、Awake、Start運行時的發生順序?哪些可能在同一個對象週期中反覆的發生
Awake——OnEnable——Start;OnEnable
2.MeshRender中material和sharedmaterial的區別?
Sharedmaterial改了材質,使用了sharedmaterial的都會同步改變,但material不會隨着同步改變
3.LOD是什麼,優缺點是什麼?
多層次細節,根據模型位置等決定渲染。優點:可以根據需要選擇渲染模型;缺點:需要美術提供模型的不同細節。加重了包體負擔。
4.ref參數和out參數是什麼?有什麼區別?
Ref使用前必須初始化,但是out不需要。
5.Unity3d的物理引擎中,有幾種施加力的方式,分別描述出來
Rigibod.AddFoce;Rigibod.AddFoceAtPosition
6.Ugui,NGUI的渲染方式,如何在兩個UI之間插入3d特效
添加一個專門渲染3d特效的攝像機,或設置sortingOrder。
7.簡述List(vector)與LinkedList(list)的區別
List(vector):數據結構是數組,查詢快,增刪快;
LinkedList(list):數據結構是鏈表,查詢慢,增刪快
8.C#內存分配原理,垃圾回收函數是什麼,如何減少垃圾回收觸發?
GC;用StringBullder代替String。
9.列舉3d渲染管線流程
頂點着色器——裁剪——片元着色器——顯示
10、算法銳角處理
汽車從a出發,經過中心點o,到達b,當角∠aob爲銳角時,需要在程序上插入兩個點(偏移爲1),從新連接使得每次轉彎都不那麼尖銳,如圖虛線。請分別列舉a,b位置的不同情況下偏移點計算
筆試
1.二叉樹中序排序算法
2.快速排序算法
面試
1.連連看連線算法
2.洗牌算法
公司五
1.做過的某某活動怎麼實現的。
2.關卡實現。
3.遊戲用到的算法。
4.成就係統實現。
公司六
1.熱更新以及框架
2.代碼管理以及差異
svn是直接與服務器進行交互,git是將項目緩存在本地再推送到服務器
3.UDP,TCP區別
(1)基於連接(TCP)與無連接(UDP);
(2)對系統資源的要求(TCP較多,UDP少);
(3)UDP程序結構較簡單;
(4)流模式與數據報模式 ;
(5)TCP保證數據正確性,UDP可能丟包,TCP保證數據順序,UDP不保證。
公司七
上機題,給你一個他們實現的界面效果,讓你照着實現。大致是一個滑動列表,實現列表元素的動態生成,初始化相關;然後需要對列表中的元素按等級排列,按品質和等級排列;最後需要實現選中一個元素,顯示此元素的相關信息。上機時間(30分鐘)
最後會根據你的成品問你一些問題,例如:
1.按品質和等級排列怎麼實現?
品質*100+等級進行排列
2.排序算法你知道哪些?冒泡法如何實現?直接上機寫
3.如何實現選中一個物體,顯示詳細信息?
將列表中的元素信息用一個list<item>存儲,點擊某個元素時傳入點擊元素的id對應去取list中的信息.
公司八
1.單例模式的作用?
2.抽象是什麼?
在繼承關係的前提下, 實例化出不同的對象, 這些對象調用相同的方法, 但是卻表現出不同的行爲, 這就叫做多態。虛方法,抽象類,接口是三種實現多態的手段
3.給你一段C++代碼,問你用C#如何實現?
4.大學自己最擅長的科目是什麼?
—未完·待續—
不想別人否定,自己就要更加努力
抱最大的希望,爲最大的努力,做最壞的打算
如果不想被別人否定,就自己要更加努力
年輕是我們唯一擁有權利去編織夢想的時光
在你想要放棄的時候,想想是什麼讓你當初堅持走到了這裏
長按識別
關注懶人下蛋
讓我知道你在看