原创 快速可靠協議 - KCP
快速可靠協議 URL: http://www.skywind.me/blog/archives/137 KCP是一個快速可靠協議,能以比 TCP浪費10%-20%的帶寬的代價,換取平均延遲降低 30%-40%,且最大延遲降低三倍
原创 體育競技遊戲的團隊AI
很多人問遊戲AI該怎麼做?隨着遊戲類型的多元化,非 MMO或者卡牌的遊戲越來越多,對AI的需求也越來越強了。而市面上關於 AI的書,網上找得到的文章,也都流於一些隻言片語的認識,理論化的套路,和一些簡單的 DEMO,離真正的項目差距甚遠
原创 如何解決FPS/RTS/賽車類遊戲的同步問題
算法簡述 動作類遊戲如何在高延遲下實現同步?不同的客戶端網絡情況,如何實現延遲補償?十年前開始關注該問題,轉眼十年已過,看到大家還在問這類問題,舊文一篇,略作補充(關於遊戲同步相關問題還可以見我寫於2005年的另外兩篇文章,幀鎖
原创 【原創】快速除以255的方法
經過若干次試驗修改,研究出下面這個快速/255的宏,可以在 X屬於[0,65536]的範圍內誤差爲零: #define div_255_fast(x) (((x) + (((x) + 257) >> 8)) >> 8) 傳統來說
原创 內存拷貝優化(1)-小內存拷貝優化
相信大家代碼裏有很多地方用到memcpy這個函數,相信這個函數的佔用是不小的,有時優化了memcpy,能使整個項目的運行效率提升。通過適當的編碼技巧,讓我們的內存拷貝速度超過memcpy兩倍,是可以實現的。 有人說memcpy還能優化
原创 博客永久遷移
永久遷移到 http://www.skywind.me
原创 程序高手的境界
程序員也有三六九等: 初等程序員靠知識來掙錢,會別人會的東西,喜歡折騰架構和框架,以掌握更多新潮東西而沾沾自喜,以模仿各種奇技淫巧重新實現一遍而四處炫耀,常見臺詞:“爲啥還在用png存圖片?爲啥不用webp這種高壓縮比的格式?”,“我們使
原创 百行內實現五子棋人機對戰
國慶沒事,想看看最少多少行可以寫一個人機對戰起來遊戲,於是有了這個Python版五子棋人機對戰,僅僅幾百行。 #! /usr/bin/env python # -*- coding: utf-8 -*- import sys, tim
原创 FlashPython - 在 Flash裏面跑 Python代碼!!
編譯了一個 FlashPython,可以在Flash裏面跑 Python代碼,性能測試得分 23703.7 pystones/second,比js版本python解釋器快多了,從此以後可以用Python來
原创 [原創] PowerPC 彙編入門與優化
PowerPC Figure – PPC入門與優化 By Skywind(2007) http://www.joynb.net/blog/ 背景介紹 PowerPC於1991年IBM/MOTO/APPLE研製,大量應用於服務器(AIX
原创 [原創] CGDC2009講稿 - 遊戲地圖自動生成
2009年參加上海 CGDC的演講講義。
原创 業餘土製:輕量級圖形庫 PixelLib
圖像:64種不同的像素格式,色彩空間變換,多種圖形圖像變換。 質量:支持3種級別抗鋸齒效果,高質量幾何圖形繪製。 實現:輕量級純軟件實現,100% C代碼(僅700KB代碼)。 優化:SSE2/MMX優化 地址:http://code
原创 幀鎖定同步算法
幀鎖定同步算法 網絡遊戲同步算法,大量應用於RTS遊戲,Xbox360 Arcade遊戲,模擬器對戰平臺。 http://www.skywind.me/blog/archives/131 算法概念 該算法普遍要求網速RTT要在100
原创 如何實現字體溝邊與發光特效?
如果你正在使用 Flash,那麼實現下面一個字體效果是一件十分簡單的事情: textfield.filters = [ new GlowFilter(0, 1, 2, 2, 10) ]; 這樣就可以了,接着把字體設置成宋體12號,顏色是0
原创 GFP-Tree 內存分配器
我也來介紹一些內存管理方面的優化算法:怎樣才能根除內存碎片?有且只有如下辦法:1. 只分配不釋放,2. 只分配固定大小內存,3. 不分配內存,雖然,仍不妨礙我們再一次回顧各種常用的分配策略,以發掘一些新的思路: 前提:下面提及的分配技巧並