啊,这一晃眼十多天就过去了
今天天气转暖了,是个开始工作的好日子
前两天亮哥提议我们使用Python加速开发,也就是使用PythonOgre,是个不错的建议
于是前两天装了PythonOgre,看了看教程和例子,发现PythonOgre里面已经集成了CEGUI,好吧真方便
(顺便吐槽一下,这几天习惯了使用VIM,突然有点不习惯普通的文本编辑方式)
今天开了小组会议,会议中我们把Clover逻辑层面的数据结构给讨论了一下
会议记录传送门:http://www.everet.org/2012/01/clover-architecture-design-meeting.html
(密码什么的我会随便乱说么)
回顾一下今天我做的事
因为vim,python和pythonOgre我一个都不熟,所以花费在熟悉他们上面的时间比干正事的时间多得多
不过总算我理清了python是如何处理类,模块和集成的了
之前帮骨架系统装上界面后,CEGUI把所有键盘和鼠标消息都截断了
于是亮哥抱怨无法“围观”他的作品,只好自己开个无界面版的分支
我自己也开了个分支,尝试解决这个问题
不过在经过研究Ogre.Renderer.Ogre.sf_ois模块中的代码和一些尝试以后,我发现这个问题还真不太好解决(也可能是我没太明白它的消息处理机制),而且也没什么必要去解决(因为我们的软件必然不是用WASD来移动照相机……)
我决定明天开始研究如何完全使用鼠标来移动视角
计划下明天要做的事
首先,纯用鼠标移动视角是件很简单的事情
可是按照一般事情的尿性来看,简单的事情都没有想象中那么简单
一个矛盾点就是,如果通过在屏幕上拖动鼠标来移动视角,那么界面就废了……
所以我的想法是参考3dsMax的做法,在屏幕上放一个指示方向的六面体骰子,通过拖动这个骰子来改变视角
这个骰子不可能是CEGUI,只能是3D场景中的一部分
所以我的工作可以归纳为一下几个:
1.找一个六面体模型,并弄好标有上下左右前后的纹理,导入PythonOgre
2.研究下鼠标如何和这个六面体交互,需要用到拾取吗?
3.研究下鼠标的事件机制
4.研究下摄像机,因为摄像机有两种移动方式,一种是自己动,一种是跟着节点动
亮哥工作日志的传送门:http://www.everet.org/2012/01/clover-progress.html