原创 快速可靠協議 - 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. 不分配內存,雖然,仍不妨礙我們再一次回顧各種常用的分配策略,以發掘一些新的思路: 前提:下面提及的分配技巧並