相遇

遇见她的时候是2013年大一上学期期末。

初入大学的我规规矩矩,听说每个人毕业前都得修够一些学分,选修一些课程才能毕业。

也不知是何原因,懵懵懂懂的我选择一门课,正是这门课中遇见了她。

当时,授课老师是从外面公司派来的,并不是学校的老师。

老师说,这门课教我们写游戏,大作业也是自己写一门游戏。

刚好大一学的是C++,这门课讲的也是用这门语言。

依稀记得,老师在介绍她之前,配置了各种环境,特别在windows上配置python折腾了好久。

这些环境配置好后,老师就正式把她介绍给我们了,Cocos!

当时的全名应该是 Cocos2d-x 1.0 ,完完全全用C++开发,老师也是以打飞机为例子给我们上课。

听的懵懵懂懂,最后的作业是以跑酷交付的。和舍友一起完成了一个有四季变换的山寨天天酷跑。(pc端)

这款游戏是借助Cocos2Dx引擎设计的一款基于移动端的跑酷游戏,类似天天酷跑,操作是控制小人来拾取金币和奖励以及躲避障碍物。我在这个项目当中所从事的工作是使用Cocos studio设计人物动作,以及代码构建的工作。设计动作就是把人物从一个个零件拼接起来,设计骨骼,通过操作骨骼产生相应的动作;另外,我负责软件代码编写的部分,其中负责物理引擎的设计,例如重力系统、碰撞检测系统的设计。另外,也负责通过代码将各种图片资源构建为整个游戏并且指挥它们产生各种动作。

天天酷跑

这是第一次和Cocos相遇,印象比较深的是环境部署繁琐(也有可能是当时个人能力比较弱)

短暂的相遇后就分开了,接下来大二的日子就没有遇见她了。

....

直到大三下学期,又有一家公司过来上实训课(应该也是顺便找找实习生

其中某一课程大纲

这次她不一样了,升级到Cocos2d-x 3.6。 当时是直接给我们了一个zip工程包,好像环境也容易配置了。

当时大三的笔记

当时的作业仍是用C++编写开发,cocos studio编辑界面。

当时写的大作业游戏是山寨二重奏(Duet),好像还有关卡剧情的设计。也是和舍友维一起完成的。

二重奏(Duet)

许多细节实现分工记不太清楚了,只记得维专研了这个粒子碰撞效果很久,最终还实现了一个不错的效果。

这次使用Cocos2d-x 完成的作业还生成了apk包,并在手机上跑起来了!

其中有个小插曲,当时我和维与一位老师一起在食堂吃饭,老师的电脑充电器没有带。

这个老师后来在实习面试的时候正好面了我们,并都获得了offer,不过维没去我去了。

这位老师侠哥正好也成了我的上级,不仅是第一任导师,也是对我影响最大的师傅了。

侠哥教我不要怕!就是上!

……

再后来的事就是cocos2d-x-lua,Cocos Creator了,等下次想起来再说吧……

Cocos 也快十岁了,祝越来越好用,让开发变得更加简单!

### 计算火车相遇时间和位置 对于两个相向而行的火车,要计算它们相遇的时间或者具体的位置,可以基于给定的速度以及两者之间的初始距离来完成。当处理这类问题时,基本原理在于理解相对速度的概念。 假设两列火车分别以速度 \(m\) 和 \(n\) 向对方行驶,且这两列车的长度分别为 \(a\) 和 \(b\) 。那么,在考虑两车完全交错所需时间的情况下,实际上是在求解从一列车头接触另一列车尾部开始直到各自车尾刚好错开这段时间内的总耗时。此过程中的有效行程等于两辆车身之和即 \(s = a + b\)[^2]。因此,可以通过下面的方式计算两车交汇时长: \[ \text{交会时长} = \frac{s}{v_{relative}} = \frac{(a+b)}{(m+n)} \] 其中 \(v_{relative}\) 表示的是两物体间的相对速度,这里就是指两辆火车朝相反方向移动时其速度绝对值之和\(m+n\) 。 下面是具体的 Python 代码实现用于计算上述场景下的两车交汇时长: ```python def calculate_meeting_time(a, b, m, n): """ Calculate the time it takes for two trains to completely pass each other. Parameters: a (float): Length of train A in meters. b (float): Length of train B in meters. m (float): Speed of train A towards train B in meter/second. n (float): Speed of train B towards train A in meter/second. Returns: float: Time taken for both trains to fully cross paths with precision up to .2 decimal places. """ total_length = a + b relative_speed = abs(m) + abs(n) meeting_time = total_length / relative_speed return round(meeting_time, 2) if __name__ == "__main__": # Example usage length_train_a = eval(input("Enter the length of Train A: ")) length_train_b = eval(input("Enter the length of Train B: ")) speed_train_a = eval(input("Enter the speed of Train A moving toward Train B: ")) speed_train_b = eval(input("Enter the speed of Train B moving toward Train A: ")) result = calculate_meeting_time(length_train_a, length_train_b, speed_train_a, speed_train_b) print(f"两车交汇时长为 {result} 秒.") ``` 如果想要进一步扩展这个问题至计算实际相遇地点,则还需要知道起始时刻两车之间的确切间距,并利用这个额外的信息加上上面提到的方法共同得出结论。不过需要注意的是,这通常涉及到更复杂的逻辑判断与坐标系设定等问题[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值