66
導航菜單
1
全站搜索
搜索
文章正文
網易游戲的程序開發屠文翔:我的職業是游戲程序員!
作者:管理員    發布于:2019-04-28 17:11:26    文字:【】【】【

對于熱愛游戲的人,能夠開發出一款自己的游戲,絕對是一件很酷很有格調的事。游戲行業的高成長高回報,也吸引著越來越多的程序員躍躍欲試。

我是網易游戲的程序開發屠文翔,今天就想和大家分享一下,從愛玩游戲到開發游戲,我都經歷了什么?

屠文翔|網易游戲程序開發


2013年畢業于華南理工大學,2015年加入網易。目前在《明日之后》項目組進行引擎優化與游戲玩法開發等工作。愛造輪子,自主開發了整套遮擋剔除烘焙與運行時系統。喜歡分享技術,2017年度金牌沙龍主講人。

【與父母斗智斗勇的游戲開發之路】

我從小就是一個愛打游戲的人。

與電腦的結緣在我六歲的時候,我爸在報紙上看到一篇專家寫的報道稱電子游戲能開發兒童智力。我爸是大學老師,他當時管理著一個實驗室。于是乎,每周我爸都會帶我去機房玩電腦,在那時,從吃豆人、大金剛到瘋狂賽車,這些現在看來畫面非常簡陋的游戲給我帶來了無窮的快樂。


然而好景不長,半年后我爸在報紙上看到另外一篇專家寫的報道稱電子游戲會損害兒童的腦補發育。從那以后,我爸再也不讓我接觸電腦。然而此時我已一發不可收拾,從此與父母圍繞著電腦游戲展開了十多年的斗智斗勇。偷偷去同學家玩,父母不在家時玩,調鬧鐘半夜起床玩,不一而足。

初中,我開始接觸到了計算機編程。當時學校有開設編程課外興趣班,用Pascal語言在屏幕上繪制字符畫。對于大部分人來說,在黑底白字的命令行中輸入一些意味不明的英文字母,然后等待返回結果是一件非常枯燥的事情。對于我來說也是一樣。但學習編程是我為數不多的能夠光明正大地“玩電腦”的機會,因此我咬牙堅持了下來。


大學讀的是軟件工程專業。由于有初中和高中的編程基礎,課程對于我來說比較簡單。大一結束時,有一門C++語言的大作業,要求完成一個命令行輸入的計算器小程序。此時這種練手類型的小程序已經滿足不了我了,我希望去開發一些“真正有趣”的程序。一個想法在我腦海里浮現——既然如此喜愛電腦游戲,我何不自己開發一個呢?

【編碼+游戲,雙重成就讓我沉迷】

一本名為“Windows游戲開發”的書成了我的啟蒙之書,悶頭鉆研了一個暑假,最終做出來了一款有十個關卡的貪吃蛇游戲。


游戲制作完成后,熱情高漲的我還為它制作了一個漂亮的UI界面,并配上了背景音樂和音效。作業展示時,絕大部分同學的展示的都是黑底白字的命令行,我的貪吃蛇游戲簡直是其中的一股清流。毫無疑問,我的作品獲得了滿分。收貨了巨大成功喜悅的我從此堅定地走上了游戲開發的道路。

第一次實習,團隊開發的是一款格斗游戲。那時的我除了心情激動以外,格斗游戲一無所知,看著策劃需求二臉懵逼。為了盡快弄明白游戲原理,向前輩請教,閱讀代碼,網上查資料。一開始雖然進展緩慢,但隨著時間推移,事情漸漸豁然開朗。

噢,原來抓投技可以破防,是因為判定的優先級不同。

噢,原來打在不同部位傷害不一樣,只是簡單的矩形相交檢測。

曾經我只是蕓蕓玩家中的一個,而現在游戲機制的秘密在向我徐徐展開。我把每一個難題當做游戲中的關卡去攻克。當實習結束時,已經對格斗游戲的機制了解得七七八八,再也不會手足無措。

編程與游戲一樣,也是智力活動。編程講究的是代碼形式上的優雅,結構上的穩定,與性能上的高效。就像是使用最少的建筑材料,搭建出最高的寶塔,是一門十足的手藝活。一旦沉浸在編程的世界中,所獲得的身心上的愉悅不遜于沉迷游戲,而使用拿手的編程語言,看著游戲的玩法一步步地在手中實現,就獲得了雙倍的快樂。

【淌過菜鳥之路,在寫Bug中不斷成長】

后來,有幸加入了《亂斗西游》項目組。相對于格斗游戲來說,MOBA游戲的技能機制復雜了一個數量級。此時的我躊躇滿志,對所有代碼都不放在眼里,卻不想闖出了一個不大不小的禍來。


一次,要制作一個新英雄。有一個技能,可以讓敵方目標單位復制出多個幻象,當AOE技能打在這些幻象身上時,敵方目標單位就會受到多重的傷害。此時《亂斗西游》已有多達50位英雄,比較穩妥的做法應該是一一標記出屬于AOE的技能,并在它們結算時增加一定的傷害。而我出于偷懶沒有這么做,而是創建了幾個隱藏的實體接收傷害,并將傷害轉移到敵方目標單位上。沒想到,有些英雄的技能與這個新英雄的技能產生了連鎖反應,可以打出“爆炸傷害”。此時新英雄已經推出,覆水難收,策劃就默默地接受了這個設定。

經過這件事情,我在后續的開發工作中成熟了許多,除了實現策劃需求外,還要多考慮可能會發生的情況,避免出現意料之外的問題。

而現在,我加入了《明日之后》項目組。《明日之后》是一個自由視角的3D游戲,場景非常復雜,性能壓力很大。我開始慢慢地接手游戲引擎的研發和優化工作。如果說游戲是一出盛大的戲劇,那么游戲引擎就是承載它的舞臺。游戲引擎應該是穩定而高效的,只要出現了bug基本上就是大bug。

當時整個項目組都在熱火朝天地進行開發,而我為了提高游戲的幀率,不得不逐步重寫掉部分渲染邏輯。我感覺我所做的事情就是在幫一輛飛速行駛的汽車換輪子。幸好多年的游戲開發也為我積累了大量的經驗。最終,我成功地在不影響項目組開發進度的情況下,完成了引擎底層渲染的重構工作。

南昌市閃撲數字軟件有限公司  



公司地址:江西省南昌市新建區紅谷灘綠地國博VR產業基地1號樓15樓                  聯系電話:86399577                            聯系郵箱:2301715279@qq.com

在線
客服

在線客服服務時間:9:00-24:00

選擇下列客服馬上在線溝通:

客服
熱線

4006-880844
7*24小時客服服務熱線

關注
微信

關注官方微信
青青视频 青青青免费视频在线