原创 【遊戲圈一週精選】:論網遊數量與青少年視力的關係

前言 一直有個想法是把自己看到過的好文章、新鮮事分享出來,直到最近看到阮老師的博客中的每週分享系列,覺得這個形式不錯,爲何我不也做一個遊戲圈的精華分享呢? 於是有了這麼一個系列:遊戲圈一週精選。都來自我從各大微信公衆號、技術論壇中

原创 Shader學習筆記(一):Surface Shader

Surface Shader是Unity爲了方便shader編寫提供的特殊功能,它對底層的vertex/fragment shader做了封裝,省去了一些重複代碼編寫的工作量。我的理解是它同時具有vertex/fragment s

原创 如何進行一場高質量的遊戲技術面試(原則篇)

最近項目組在大量招人,我作爲項目組的技術主管參與了各種技術職位的招聘,在此將一些心得總結一下。 打算寫成上下兩篇。這裏是上篇,只談招聘原則。下篇則是針對不同的工種,列出具體的考覈要點,形成大綱。 首先是要明確招聘的崗位需求。如果是

原创 從一條阿里編碼規範談線程池的使用

最近在看阿里Java編程規範,有一條引起了我的注意: 【強制】線程池不允許使用 Executors 去創建,而是通過 ThreadPoolExecutor 的方式,這樣的處理方式讓寫的同學更加明確線程池的運行規則,規避資源耗盡的

原创 記一次服務端定時器問題的解決

最近遇到了一次服務端定時器性能瓶頸的問題,把解決過程在此記錄一下,作爲備忘。 首先是前一段線上項目連續導人,平均在線千人左右,隨之服務器慢接口(>100ms)越來越多,一天能達到五位數。觀察內存佔用情況,不高,沒有頻繁old gc

原创 記一個騰訊信鴿引發的線程卡死問題

一天公司的遊戲有大量玩家報自動戰鬥、種植等操作無法進行,第一時間想到可能是因爲玩家的定時任務線程卡死了。用jstack查看線程堆棧日誌,發現都卡在了一個http read的地方。 公司使用騰訊信鴿做手遊的系統推送,卡住的地方就是調

原创 《我所理解的Cocos2d-x》書評及筆記

       花了兩個月陸陸續續地把這本書讀完,覺得總體上是一本很不錯的書。作者以前參與過cocos引擎的開發,因此是以自己的角度講解cocos引擎,不同於市面上很多單純羅列cocos api和代碼的書,而是結合OpenGL ES和圖形

原创 Pomelo環境搭建完整攻略

最近在研究網易的Pomelo開源遊戲服務端框架,它是一個基於node.js的分佈式框架。具體過程如下: 下載並安裝node.js 一個下載速度較快的中文站點:http://nodejs.cn/download/ 這裏有詳細的安

原创 如何將普通Java工程轉成Maven工程

在github上開發了一個個人項目,一開始是用eclipse開發,將依賴包直接放在lib目錄下。後面看到開源項目普遍都用maven管理jar包依賴,使用方便,於是想辦法轉成了maven管理: 安裝maven,併爲eclipse安

原创 如何使用UWA做遊戲性能優化

UWA是現在常用的Unity手遊性能分析工具,好處是比Unity自帶的工具或Xcode更詳細和直觀。最近公司的項目也在使用,將使用經驗在此做個分享。 先看下UWA的產品線: GOT Local/Online 線上測評 線下深度優

原创 如何進行一場高質量的遊戲技術面試(實戰篇)

接着上一篇寫,上一篇是講理論,那這一篇則是講實戰。這裏針對不同的工種,列出一份我在實際面試過程中會用到的考覈大綱,算是拋磚引玉。 Java(服務端) 項目經驗:業務模型,總體架構,自己負責的模塊 Java語言:GC,多線程,性能

原创 【bat】批量修改文件名腳本

有人託我寫個批量修改文件名的腳本,之前沒有寫過bat,現學現賣,在此記錄一下。 具體代碼如下: rem 關閉調試輸出,開啓延遲變量 @echo off&setlocal enabledelayedexpansion rem 讀取輸入

原创 Layabox技術講座分享

今天有幸聽了Layabox公司技術負責人做的技術宣講,關於LayaAir 2.0。收穫不少,在此記錄一下。 目前Layabox公司主推LayaAir 2.0,不過還是beta版本,演講者也說了,如果是開發3D遊戲,一定要用2.0;如

原创 MessagePack爲什麼比Json更小更快

MessgePack和Json都是常見的數據交換格式。Json更常見一些,MessagePack與之類似,但是更小更快。 參見官方解釋圖: 上面是原始json,27個字節。 下面是用MessagePack打包過的信息,主要思想就是將

原创 記maven工程導入eclipse遇到的問題

從github上下載maven管理的工程,導入eclipse遇到了一些問題。在此記錄下,以備後面查詢。 先是執行mvn eclipse:eclipse報錯:“Failed to retrieve plugin descriptor f