一 、涉及领域:
游戏开发,
软件破解,
web全栈,
小程序开发,
安卓开发,
桌面应用开发。
二、主要技能如下:
c/c++/ c# : 5年 (长期使用)
安卓开发: 2年,(偶尔使用)
嵌入式stm32: 2年
逆向破解: 4年
Qt : 2年
数据库 : 2年 (偶尔使用)
web开发 : (2年)
游戏开发: 5 年 ( Ue4 / Unity )
美术: PS , PR ,AE ,3dmax ,blender, (1年)
游戏开发:ue4 / unity 开发体验馆展示类游戏,主要有雅迪电动车,国家电网,厦门海事船等项目研发。
开发设计与下位机通信的上位机控制软件,设计mfc,c++ ,qt ,c# 等开发语言,
开发模拟飞行控制软件,主要有桌面控制软件开发, 模拟飞行控制驱动开发,
软件逆向: 逆向获取软件数据等,开发软件逆向工具与脚本。
在职期间,主要研发方向:
1--主要涉及技术: http通信 / MFC / c# / html /css / PHP / mysql
微信扫码结算后控制,主要功能,用户通过扫码二维码信息,并完成支付,程序将获取微信返回用户昵称id,头像信息,扫码支付结果,并存储到本地数据库中,完成后,将本地数据传输到远程服务器的数据库中,远程服务器获取到支付成功信息后,再启动相应设备供用户使用。
2--主要涉及技术:c++ / MFC / c# / Qt / p3d sdk / xplane sdk / lua / socket通信,串口,usb
飞行教员管理系统开发,
软件分多个模块:飞行天气修改模块,飞行时间和季节修改模块,飞行燃油设置与计算模块,飞行机场设置模块,飞行计划配置模块,飞行数据信息实时显示模块, 实现可修改天气,时间,机场,故障,以及在软件界面实时显示飞行数据。
3--主要涉及技术 : OD / CE / IDA / c++ /asm汇编 / C# / dnspy / Ilspy / .NET Reflector
破解第三方模拟飞行控制软件,
先后解除飞行模拟xplane教员控制软件注册限制,pb飞行仪表显示,已经G1000飞行液晶显示软件
获取以下软件角色相关数据。
皇牌空战7 :逆向获取其飞行姿态数据
citycardriver : 逆向获取汽车运动数据
Airport Simulator 2015 : 解除关卡限制和金币限制
X 重生 : 获取姿态数据与武器系统相关数据
鹰击长空1-2 : 获取模型数据,与飞行姿态和武器系统数据
伊尔2掠食之翼 : 获取飞行姿态数据
滑雪2007: 修改二进制代码数据实现全屏窗口化,禁用失去焦点自动最小化功能。并获取其角色姿态数据。
F1 2012 :飞行数据获取,接触自动控制键盘限制,并强制窗口化运行。
PsA320 : 通过解扰,解除限制,并反编译获取完整源代码,主要供学习使用,并非用在商业用途。
4--游戏开发方面:
基于UE4 (以下列举部分项目)
涉及技术: UE4 / c++ /蓝图/ AI 算法 / 行为树 / 串口 / usb通信 / socket网络
1.雅迪电动车游戏体验开发,基于游戏大厅形式可联网多人体验,游戏分4个场景,分别是城市,山地,乡村和赛道。
城市场景主要功能 : 在玩家操作骑行中,实时记录电动车超车,闯红灯,转向角度过大等次数,以此来评判驾驶技术熟练程度。
每个场景中均有自主开发的电动车AI流,遇到前方车辆会自动减去,减速距离不够将自动刹车。
游戏中,电动车可自动与手动驾驶切换,定速巡航,偏道矫正,自动超车。
玩家体验过程中,可手动驾驶电动车进行体验,也可随时切换自动驾驶,当自动驾驶过程中,如果遇到前方车辆,在非弯道且满足超出距离时,电动车将自动超过前车,并继续自动驾驶。
在玩家手动驾驶过程中由于驾驶技术原因出现偏航,智能矫正算法会在电动车将要碰撞护栏时,自动矫正,使得电动车自动回中。
在体验过程中也可进行定速驾驶,此时松开油门,只需要控制好方向盘即可正常的驾驶,当再次按下功能键将自动解除,并恢复手动驾驶。
5--主要涉及技术: c++ / C# / UE4 / 蓝图 / UE4物理属性 / 3dmax建模 / opencv图像采集与处理 /
海事船救援游戏开发,
游戏主体功能为,驾驶,救援,和检测 ,
体验人员,在进入游戏后,可自由驾驶救援船到处游览风景,游戏中的每个建筑,均按厦门和福州海湾地景创建,每条船,均是当地所有的。
当游戏过程中,驾驶员会随时听到警报,前方有人落水需要救援,此时会伴随声音提示。
当驾驶员按下收到警报按钮后,救援船前方便出现红色箭头指引,
此时驾驶员需要根据指引驾驶船到达救援位置,再驾驶过程中由于救援点一般距离很远,驾驶员可根据需要选择加速行驶。只需要按下座舱的加速按钮,此时船将健步如飞。
当到达救援点后,驾驶员抛出救生圈,必须要命中落水人员 (通过opencv获取摄像头图像进行图像处理来判断是否命中) , 否则视为无效,当命中后,将提示救援成功,否则需要再次抛出救生圈。