前言 在很多第一人称或者第三人称射击游戏的单人模式中,玩家的乐趣往往来源于和各式各样的AI敌人的战斗.而战斗的爆发很多时候是因为这些AI在"看见"玩家后就会立即做出反应,比如开火.呼叫同伴.躲藏或者逃跑等. 所以这些AI到底是如何探测,或者说"看到"玩家位置的? 别人的例子 参考了知乎 给猫看的游戏AI实战(二)视觉感知初步 这篇文章. 这篇文章中,原作者让玩家站在敌人的角度来探测目标,它通过向正前方一定扇形区域发射一堆射线来探测目标的位置,如下图: 这种方法虽然实…
LINUX内核分析第三周学习总结——构造一个简单的Linux系统MenuOS 张忻(原创作品转载请注明出处) <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.使用gdb跟踪调试内核从start_kernel到init进程启动 使用实验楼的虚拟机打开shell cd LinuxKernel/ qemu -kernel linux-/arch/x86/boot/bzImage -initrd rootfs.im…
第三周学习总结--构造一个简单的Linux系统MenuOS 作者:刘浩晨 [原创作品转载请注明出处] <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.Linux内核源代码简介 上节课总结: 计算机三个法宝:存储程序计算机.函数调用堆栈.中断 操作系统两把宝剑:中断上下文的切换(保存现场和恢复现场)以及进程上下文的切换 Linux内核源代码简介: arch/x86中内容重点关注 init目录重要,内核启动相关…
前言: 1.关于PureMVC: MVC框架在很多项目当中拥有广泛的应用,很多时候做项目前人开坑开了一半就消失了,后人为了填补各种的坑就遭殃的不得了.嘛,程序猿大家都不喜欢像文案策划一样组织文字写东西,也不喜欢看别人留下不清不楚的文档,还不如看代码来得实在.刚开始新人看代码是看得头晕,因为这样那样的东西不一定能完全猜得透.而老人家就算有经验和阅历,也没有这么多的体力去看一个庞大而又复杂的糟糕项目.因为这种需求,Unity3D的程序猿就统一组织起来,想做一个完整规范的程序框架,而这时,PureMV…
1.前言 刚好最近跟技术部门的[产品人员+UI人员+测试人员],组成了一桌可以去公司楼下醉得意餐厅吃饭的小team. 所以为了实现这些主要点餐功能: 提高每天中午点餐效率,把点餐时间由20分钟优化为1分钟: 知道在哪些付款金额范围内,可以有哪些菜单可以选择: 知道人均付款金额: 知道微信需要付款总金额: 给餐厅老板发的点餐文案: 当前点餐菜单里的具体菜品名和价格: 结合之前学习的知识点,利用django框架的MTV思想,开发一个简单的html页面,让公司同个局域网的同事自己进行操作和查询醉得意菜…
pipelinewise 提供了方便的创建简单pipeline的命令,可以简化pipeline 的创建,同时也可以帮我们学习 生成demo pipeline pipelinewise init --name pipelinewise_samples 效果 一个简单的pg 2 pg 的demo 生成tap 以及target yaml 配置 直接使用的demo 配置文件 cp tap_postgres.yml.sample tap_postgres.yml cp target_postgres.ym…
这段时间想学习一下Spring,其实之前学过Spring,只是有些忘记了.而且之前学的时候是适用eclipse学习的,现在好像对IntelliJ这个工具使用挺多的,现在就学习一下这个工具的用法,顺便复习一下以前学习的Spring框架. 由于工作比较忙,只有晚上有一点时间学习这个工具. 今天学习怎么用这个工具创建一个简单的项目. 我是尝试了好几次才成功的,可能我自己比较笨吧. 下面我们来看看怎么创建一个简单项目. File->New->Project 然后选择maven-archetype-qu…
package thread1; /** * 实现一个简单的ArrayList * * @Title: uminton */ public class SimpleArrayList<T> { //数组中元素的大小 private Integer elementSize = 0; //创建SimpleArrayList时,数组的容量,默认为16 private Integer arrayCapacity = 16; //当数组容量不够时,默认每次扩容的大小 private static fin…
郝智宇 无转载 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 第三周 构造一个简单的Linux系统MenuOS 一.Linux内核源代码简介 三个法宝和两把宝剑: (1)       三个法宝:存储程序计算机.函数调用堆栈.终断 (2)       操作系统的两把宝剑:中断上下文的切换(保存现场和恢复现场).进程上下文的切换 arch/x86目录下的代码是我们重点关注的 init目录:内核启动相关的代码基本都…
在前面几部分的基础上, 我们更新一下代码,实现一个简单容器 sdocker. sdocker目录构成 linux: # tree . ├── Makefile ├── cpu-test.c # 由cpu.c重命名 ├── memory-test.cpp # 由memory.cpp重命名 ├── resource.c # 新增用于资源管理 ├── resource.h ├── sdocker_exec.c # 模拟 docker exec └── sdocker_run.c # 由namespac…