自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

善良的兽人

写点什么,免得好东西飘走

  • 博客(78)
  • 收藏
  • 关注

原创 Rewired(知名Unity输入插件)与IL2CPP编译冲突问题

1、Rewired介绍:目前Unity提供的输入系统,有传统的Input Manager,和新的Input System两种。前者功能陈旧,不能胜任跨平台输入、玩家自定义输入的需求;后者过度复杂,引入了太多不必要的功能,学习成本高又不是完全成熟,性价比低。所以现在外网提到输入系统,总是会谈到Rewired插件。这是一个资源商店里的畅销插件,有一定用户基础,地址如下:https://assetstore.unity.com/packages/tools/utilities/rewired-21

2021-06-26 12:47:49 1275 1

原创 平凡的人生or开挂的人生——对知乎相关问题的回答

知乎原题:为什么有些人的人生和开了挂一样?https://www.zhihu.com/question/37106162楼上说的都特别好,我很想补充一点。我先抛出一个背景概念——我认为开挂人生,本质不同,分为两种第一种:由于境遇不幸,或者仅仅是由于童年时的一个深刻的心理期望,从而对人生平常事失去了体验的乐趣,反而对挑战与奋斗充满了渴望,把世俗的成

2017-06-26 16:07:36 2750

原创 斜45度游戏地图,坐标系转换问题

游戏中斜视图大地图坐标的简易解法

2017-03-16 17:04:15 5774 3

原创 游戏开发培训的两难与探索

游戏开发培训的两难与探索游戏培训的现状说到游戏培训,其实包含的范围比较广。容易想到的一是游戏美术,包括原画、3D美术等几大类;二是游戏编程培训,几年前Cocos2D比较火,现在清一色的Unity3D。CSDN博客 善良的兽人Goodorc EMail:[email protected]打开百度,搜索“游戏培训”,看前几名。可以点进去看看课程介绍。会发现一个问题,不了解行业的人可能察觉不到。后面细说

2017-03-13 23:12:39 4768 2

原创 To The Moon 玩后感

惭愧,这都2016年了,才玩了这部作品(说读过更合适)虽然它不是一部刻意催泪的作品,但我依然感动的一把鼻涕一把眼泪。 这部作品的主线剧情极为完美,倒叙的表达方式、主角通过努力让老大爷最终获得完美的记忆,都很不错。 但是,从结局里走出来看。丽娃的经历与努力,这条暗线,才是剧情最大的闪光点吧。 爱情是永恒的主题,我们都在从不同的角度去表达。

2016-05-11 16:34:39 1865

原创 两个加锁相关的算法,非常基础,带图。原创思路抛砖引玉

算法一:如果需要从一个较慢的地方,比如DB里,隔几秒反复读取配置,如果配置变化了,就更新逻辑里的参数。那么算法一可以参考。        算法一主要是避免了锁的使用。在读取到参数没有变化的时候,不做任何事。如果参数变了,在参数成功更新到逻辑内之前,也不做任何事。算法二:常见的生产者——消费者模型,优点是比较简朴,而且上锁时间非常短,还是比较实用的。

2016-04-22 17:30:12 1289

原创 DLL和lib的不同之一——一个要外部链接,一个不需要

今天发现,如果dll库函数里用了一个std::string&类型的参数,且在使用时修改了string的内容,那么可能会因为调用者用的内存分配器与dll库里的不一致,而导致崩溃等严重问题。        神奇的是,同事把dll改为lib,就解决了这个问题。准确来说,lib方式,库内的函数调用new函数时,也会跳转到已经被重载的全局new上面去。        仔细看了下VS2013的工程设置

2016-04-21 14:41:10 1144

转载 跨平台内存分配器TCMalloc

http://www.cppblog.com/feixuwu/archive/2010/07/10/119980.aspx跨平台内存分配器TCMalloc,看着很屌的样子。楼主是Windows开发为主,很有参考价值。一定要点进去看,这篇文章一半的精华在评论里。评论里提到,windows下做dll注入和linux下方式不同。windows的方式更hack一点评

2016-04-21 14:35:04 952

原创 微信开放平台SDK笔记

从昨晚开始看微信开放平台的内容。今天略有成果,把关键点记录一下。        整体思路:        SDK客户端部分。由于HTML5,客户端也是在服务器上,所以导致一开始我没搞清楚这个JSSDK是什么东西。        后来在白鹭论坛里找到了真正的PHP服务器端的代码,才知道确实是两部分。        纯服务器端的部分我在微信官网没找到例子,建议到白鹭引擎的论坛里

2016-04-10 18:56:53 1407

原创 三十而立

三十而立,此文写给未来的自己。

2016-03-02 19:32:43 1289 2

原创 用Python操作Named pipe命名管道,实用做法

用Python操作Unix命名管道的实用做法

2016-02-01 15:52:43 13271 2

原创 《经济解释》私人笔记

《罗辑思维》真是个好节目。        一个节目好不好,有时候不是它本身好不好,而是它带来了怎样的信息,对你产生了什么启发;或者干脆只是一些零碎的信息,其中某些信息引起了你的兴趣。有时这种无意的信息是灵感的来源也是知识的来源。        甚至于,一本书错误百出,但是作者的主题却能让你恍然大悟,如醍醐灌顶——在阅读“罗辑思维”所推荐的《经济学通识》时,我体验到了这种神奇的经历。

2016-01-08 16:46:34 1309

转载 quake3 code 源代码 编译调试。保证通过。

原地址:http://www.cnblogs.com/roland1982/articles/5045624.htmlquake3 code 源代码 编译调试 。保证通过。Quake3引擎的源码已经公开了,研究过的人都认为虽然它年代比较久远,但是代码写得非常漂亮,非常值得一探究竟。Quake3引擎的源码是完全开源的,但是Quake3这款游戏的资源(声音、图片等)并非免费

2015-12-14 16:26:39 3835 2

原创 我为什么学习Python

在我的编程生涯中,Python给了我第二次热情。第一次热情——编程之路的开始。        和不少人学过BASIC的人一样,我从小就接触到了编程,但是那时无论是研究小霸王学习机,还是在课外兴趣班里由老师教。对编程方法都还是保持着一个模糊的印象。当时觉着,稍微复杂一点的问题——比如解方程式,播放动画——都挺难想出做法,所以也就知难而退了。现在回想,用编程实现解方程或者是在小

2015-11-12 16:13:13 2488

原创 Python游戏服务器开发日记(九)近期问题总结。(打酱油中……)

由于领导提出的多进程方案有很多问题,进展缓慢。好在有另一个同事慢慢进展中,我主要是做各种单独的试验,集成各种技术进行尝试。        Python多子进程方案的核心是共享内存,除了mmap方式,还有shm方式,都是linux提供的共享内存方案。        无论哪种共享内存方式,都需要自行申请整块内存,然后在创建对象时,将对象数据放在共享内存区域,实现多进程都能访问的目的。   

2015-11-12 15:25:39 2110 2

原创 Python游戏服务器开发日记(八)整体方案改变了……

老大和CTO提出了新的方案,之前的架构被推翻了。        简单来说,就是使用多进程,工作进程启动python环境。        最奇葩的是,我们回到了利用共享内存保存entity的方案。entity里保存纯data,是一个纯的二进制数据块。        Entity在用的时候,包装成PyObject给Python使用。如果修改了,则重新打包成二进制块存回去。

2015-10-16 18:27:59 2663

原创 Python游戏服务器开发日记(七) 关于协程(greenlet)和C语言的思考

前两周埋头在服务器的具体技术试验里,不断的遇到小问题,不断的解决。        大量的问题核心就是在利用dlfcn库调用python so时,API的用法会有变化。导出符号本身不是什么难题,难在某些Python C API是用宏或者其他方式提供的。最奇葩的是greenlet库,把所有API放在一个全局指针数组里,而且初始化方法也和标准python扩展库不甚相同。后来是采取把greenlet库

2015-09-20 23:26:45 1793

原创 Python游戏服务器开发日记(六) 解决GIL难题!——Python再认识

本系列文章的第一章就已经提到,用加载多个python动态链接库的方式,可以巧妙的避开GIL,实现多个python环境运行在同一个进程内。        但是从上一个试验,到思考具体的实际用法,又经过了长达一周多的思考试验。到此时,Meme服务器框架的最底层疑难才彻底明朗。本文将彻底分析多线程下多python环境的使用。

2015-09-02 22:09:04 2426

原创 Python游戏服务器开发日记(五)skynet_messagequeue和skynet_timer

最近,skynet群里有同好与我一起讨论skynet底层一些比较难理解的实现细节,乘此机会仔细看了一下源码,我最关心的是skynet_mq和skynet_timer两个我会用到的部分。        本文不想讨论太细节的问题,具体的实现思路我并没有理的非常清晰,还是看代码为好。我这里从实际需求出发,写一些tips,方便新来的小伙伴参考。        skynet的time

2015-09-02 22:02:16 3658 1

原创 Python游戏服务器开发日记(四)scons编译工具、C和C++混合使用

今天在编译python so时出现点问题——把其他C库链接到同一个so里——尝试了一早上发现了方法,已经更新到本系列的第二节里了。        整理了一下工程目录,打算用scons管理。        scons毕竟是一种新型的build工具,比makefile肯定有很大进步,至少更清晰好学,少了很多晕晕的trick。但是相比其他高级工具比如cmake之类的,就不清楚优劣了。

2015-08-26 20:57:33 2708

原创 Python游戏服务器开发日记(三)用greenlet模拟lua coroutine的研究

分布式系统中,如果一个Entity访问其他Entity,那么这个调用一般都是异步的,也就是说当时不能立即得到返回值。如果用callback的方式实现,函数就会变得很碎。        skynet在核心层处理了这个问题,并提供了skynet.call来做异步调用。        据我研究,Python2.x提供了生成器(generator)模拟coroutine的方法,但是显然是不

2015-08-19 17:44:03 1844

原创 Python游戏服务器开发日记(二)绕过GIL启动多线程Python环境

说道Python和多线程,很容易想到GIL,GIL意味着只要是用Python做的多线程程序,就无法利用多个CPU。        经过一些失败的尝试后,我也一度认为GIL是无解的。我们甚至把注意力转向了IronPython等无锁Python,但是实际上那样问题可能更多,比如我们不熟悉mono,mono也没达到完全成熟的程度。        直到skynet的QQ群里一位朋友介绍了另

2015-08-19 17:22:56 3368

原创 Python游戏服务器开发日记(一)目标

到了新的环境,老大让我有空研究下一代服务器技术,作为一个长期任务。       新的服务器想达到的目标:1、分布式系统,对象(Entity)之间的关系类似于Actor模型。        2、逻辑服务,是单进程、多线程的,对象之间发消息进行通信,但是简单读取属性尽可能做到直接。3、必须使用Python语言。开发方式类似于BigWorld引擎。这个目标还是很宏伟的

2015-08-19 17:03:21 7094

原创 巧用exec语句修改string.Template的delimiter

http://jianpx.iteye.com/blog/899230原文名字叫做:浅析python的string.Template最终这篇文章没有解决修改模板类的参数的问题。其实问题简单来说就是:能否在定义一个class的时候,在class创建的“第一时间”,将一个变量传进去。这个“第一时间”在__init__函数之前,因为在Template这种用模板创建

2014-01-02 19:05:58 1397

原创 Python类型迷惑:None与数字比较;格式化字符串与unicode

Python类型迷惑:None与数字比较;格式化字符串与unicode

2013-12-16 10:47:04 4007

原创 《乔布斯:遗失的访谈》观后感;《基地》第一部中的三次危机。

《乔布斯:遗失的访谈》优酷播放地址:http://v.youku.com/v_show/id_XNTUxNDY1NDY4.html?f=19236226        我被这部视频中乔布斯的表现彻底吸引了,他说话的语气、神态、思考时停顿、举例子的方式、情绪的变化,这些引起了我强烈的关注,进而对他所说的内容也留下了深刻印象。        这种强烈的代入感甚至让我在视频后半段不愿

2013-05-04 17:23:53 9296

转载 Facebook接入ios,要点记录(不回调,info.plist写法等问题)

我遇到的问题是将Facebook接入cocos2d-x项目(iOS平台),下面这篇文章已经说的非常好了,建议先阅读。http://blog.csdn.net/xiadasong007/article/details/8599611这里要记录两个问题:1、项目的Info.plist里,有一个URL Types参数,此参数填法应该是—— fb + AppID,例如你申请的F

2013-04-19 10:44:21 3038

原创 【XXXXX】近几个月来完成的工作提纲

从2012年5月底开始,手机游戏《XXXXX》正式开工。我们的技术团队是第一次接触手机游戏项目,现在想起来,一路走来还是做了不少事情的。        10个月的时间,我到底做了哪些事情呢。1、Excel表格读取。        Excel表格(转存为TXT格式)读取方面我至今做了3次,第一次是Python版本,用在数据提取工具上;第二次是C++版本,实现了所有基本的按列的数据类型读取

2013-04-05 17:59:37 2607

原创 小孩子打架的寓言

你是一个很有知识很有才华的人,但是因为种种原因,生活比较窘迫。你的一个朋友很欣赏你,也愿意帮助你。所以长期以来,你在生活上都受到他很多照顾。还有你写书、发表文章的资金和渠道,外加你那一点点小名气,很大程度上都依赖于他。        你朋友的孩子今年6岁,刚上小学一年级。不想刚到了新的环境,就和班里一个同学掐上了。那个孩子今年7岁多,身体很结实。你朋友的孩子两三下就被揍得青一块紫一块。

2013-02-03 12:47:43 1257 2

原创 【生活日记】最近心态不好啊,沉不住气

近期工作室方面进展还算顺利,几个大的门槛,包括资金和项目进度,都似乎看到了一线曙光。我在这种时候最容易一下子放松下来,老毛病了。        最近玩的东西挺多。冬天没法玩短卡,于是受sanshi怂恿搞了一个美嘉欣四轴小飞机,室内飞+室外航拍,玩的非常过瘾;以前收留的小猫,也被新主人送来暂时寄养在我这里,好久不见,长大了依然很可爱。        但是结局是——前两天四轴X

2013-01-02 17:15:00 1127

原创 关于逻辑服务器并行计算的思考

注:本文纯属个人思考过程的记录,仅供参考,估计有众多不当之处欢迎指正。        服务器并行化,对我们现代的程序员来说有着极强烈的吸引力。分布计算、云服务、高并发数据库、虚拟机、无缝大世界网游服务器,等等,所有这些热门技术,都指向了同一个目标:并行计算。        并行计算的最终形态我认为是——可以通过增加硬件实现几乎无限的服务器负载。        从

2012-12-16 13:59:37 2394 3

原创 lua调用C++函数崩溃时,查看lua的调用栈信息 (特别适用于tolua++)

cocos2d-x这个开源引擎目前在移动开发领域挺火,我用了一阵子,非常喜欢它的lua绑定,一旦理解了其工作机制,用起来相比C++有不同的感受。        但是想要用好lua脚本,实在不是件容易的事情。要让lua绑定变得非常好用,可能依然需要大量工作。        这里记录一个很实用的技巧:在lua调用cocos2d-x的接口而导致崩溃时,无法直接看到lua的调用栈,也就无法

2012-12-06 23:39:19 11589 2

转载 MySQL优化总结

http://tech.it168.com/a2009/0526/577/000000577940_10.shtmlMySQL优化总结,写的非常好,平白易懂,看了前一半,后面的暂时用不到,留着。

2012-11-15 11:42:28 935

转载 在shell中启动后台执行程序,然后退出shell会引发 IOError [Errno 5] Input/output error

详见:http://www.iteye.com/topic/1114469http://hi.baidu.com/dalier/item/a6723a0db60b73e2f55ba6fa补充:        今天我也第一次遇到这个问题,还以为是阿里云的BUG,原来shell还有这个毛病,估计职业搞网管的同学比较清楚。        长期运行的服务器,输出需要专门处理

2012-11-07 23:25:10 3384

原创 TXT格式的Excel表格读取问题优化解法(目前我所知的最简洁算法)

做大型游戏的国内公司,据我所知全都在用Excel做数据——程序把数据接口抽象出来,给策划在Excel里填写数据——除不同的编辑器之外,数据的使用方法几乎都是一样的。        把Excel表格存为txt格式,就得到了一个很简单的文本表格。把它拿给程序识别,只需要解决两个问题:        1、正确的按行、列分析读取数据        2、数据存储我打算把这篇博客写的尽

2012-10-27 22:33:01 1939 1

转载 【转一篇C++的dynamic_cast讲的很明白的文章】C++中的dynamic_cast

(博主按:多年编写“C++”代码,今天头一次想起来还有dynamic_cast这个东西,从来没有用过。大概在网上学了下,找到这篇不错的文章。另外,想不起来在哪里用dynamic_cast合适,嗯。)—————————————————以下是引用—————————————————————————————引用地址(貌似链接失效了):http://skywalkerj.spac

2012-07-16 21:59:28 1447

转载 [手贱知识多]Linux下误移动根目录文件导致系统出现异常的解决方法

原地址:http://blog.7xiaowu.cn/2012/03/06/1603.htmlLinux下误移动根目录文件导致系统出现异常的解决方法三月 6, 2012今日在整理VPS上面的文件的时候,手贱,打错命令,把根目录下的文件全部移动到一个目录下去了。本来要打?View Code SHELLmv 1

2012-06-26 11:44:06 6595 4

转载 gcc和g++的区别。四个理解误区

原帖地址:http://forum.byr.edu.cn/pc/pccon.php?id=1942&nid=56349http://hi.baidu.com/walker20100000/blog/item/0be87acfa3852b0a01e928d4.htmlgcc和g++的区别   我们在编译c/c++代码的时候,有人用gcc,有人用g+

2012-06-17 11:00:02 1851

原创 【忙到没空写博客的程度】表格型配置文件内存优化之一:简单内存分配器

最近是生平第一次全时间投入coding,甚至连写博客的精力都没了。这种感觉不是很好,希望能早日调节过来。努力工作之余深入思考我觉得很重要。         说正题,目前国产大型游戏开发里,经常用到Excel配置文件,这是一种文本文件,用Excel编辑表格后存为txt格式即可。除一些特殊情况外可以认为是用和换行分割的csv文件。这种配置文件的分析和读取不算难写,只要试验清楚Excel对待引号、换

2012-06-16 17:16:46 1375 1

转载 留一个神python代码——混合使用wxpython和pyglet(cocos2d编辑器)

import wximport pygletfrom pyglet.gl import *import sysif sys.platform == 'win32':    from pyglet.window.win32 import _user32    from pyglet.gl import wglelif sys.platform.startswith

2012-06-02 16:14:52 3702

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除