登录    注册
  

C++ 实战水果忍者游戏(游戏引擎、Win32编程、MFC精讲、核心算法)

  • 赞助费:¥680元   在线客服:有事联系我哦     点击这里给我发消息    itying微信客服    交流群:it营
  • 课程讲师: 今夜有风
  • 适合人群: 初级
  • 课时数量: 56
  • 更新程度: 完成
  • 主要技术: C++
  • 赞助类型: 收费
  • 用到技术: Win32编程、核心算法
  • 涉及项目: 水果忍者
  • 浏览次数: 8178 次     付款后在订单列表获取下载地址

浏览历史

课程描述

相关课程

还购买过

 一、项目简单介绍:

水果忍者游戏:

     《水果忍者》是一款简单的休闲游戏。目的只有一个——砍水果!屏幕上会不断跳出各种水果——西瓜、凤梨、猕猴桃、草莓、香蕉、石榴、杨桃、苹果、火龙果等,还要在水果掉落之前要快速的全部砍掉!千万别砍到炸弹!不然游戏就结束了。

 

    尽管移动平台上的游戏因为手机屏幕及运行能力所限,游戏画面通常会设计得比较简单,但游戏设计者却绝不允许在玩家不易察觉之处有一丝偷懒。比如若把《水果忍者》的游戏画面以十分之一的速度播放,你会清楚的看到一个水果被切开后果汁的飞溅方向,以及果汁是如何一点点消失的。正是这样的细节体现出来的效果让用户觉得切水果“很爽”。

 

     游戏界中有一句广为流传的说法是,一款成功的游戏肯定会非常容易上手而又很难真正完全掌握的。这句话对休闲游戏来说尤其重要。《水果忍者》把这一点做到了极致。当人们打开游戏的时候,看到水果图标很自然就会去点击,但是会看到手指划过的提示,于是就会很自然的采用划过的手势去点击图标,并且会把这种交互方式延续到游戏中。

 

     当用户看到水果弹出来就会去切,因为很快会出现炸弹,如果碰到炸弹游戏就会结束。于是用户就知道了不要去碰炸弹,接着玩很快就会发现连着一笔切好几个水果有奖励,就会尽量连着切。通过这样的发现和学习,用户很快就会知道游戏的基本玩法。但是要获得高分还是有很多技巧需要掌握。

 

本C++水果忍者游戏的设计:

本次游戏设计主要分为三个模块:游戏进入模块,游戏进行时模块,游戏控制模块。各个模块之间的关系和作用如下:

游戏控制模块:主要负责游戏的状态控制,游戏主要包括三种状态:启动状态,进行状态,暂停状态。  
游戏进行模块:主要负责游戏中各种动画的创建,动画播放,动画事件,和动画销毁等。 游戏进入模块:负责游戏进入时动画的显示,数据加载和响应用户的选择输入。
底层类

下面是游戏的状态图:

 

游戏引擎:

     游戏引擎是指一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件。对于此项目的游戏引擎,我们将以学习为主,并在原有引擎的基础上修改出自己所希望的引擎支持。游戏引擎最重要的一块就是游戏的渲染,美工会按照不同的面把材质贴图赋予模型,这相当于为骨骼蒙上皮肤,最后再通过渲染引擎把模型、动画、光影、特效等所有效果实时计算出来并展示在屏幕上。渲染引擎在引擎的所有部件当中是最复杂的,它的强大与否直接决定着最终的输出质量。因此这一部分也将是我们重点研究和设计的对象。

综合我们的项目动机,我们将期待以下的结果:

1. 实现切水果中的水果刀效果,并演示相关切法特效(如水果喷射、溅洒等等)。

2. 根据相关算法,设计不同的游戏模式,在原有引擎基础上进行升级。

3. 添加道具系统,当切到一定高分之后,可以获得道具,如瞬间炸掉屏幕内所有水果的道具等等

 

二、培训目标

1、本系列讲座分为四大模块:

基础篇:主要讲解c++以及MFC的深入浅出

进阶篇:主要讲解游戏设计以及游戏引擎

设计篇:水果忍者游戏设计算法精讲

实战篇:水果忍者代码实现部分演示与精讲

2、适用对象

最好有一定C++基础知识

热衷于学习界面编程的人群

热衷于游戏设计和开发的人群

三、模块介绍(共56讲)

1、基础篇:主要讲解c++以及MFC的深入浅出

容器与算法精讲

类与数据抽象精讲

模板与泛型编程精讲

标准IO库知识点深入浅出

CObject类详解

消息映射的实现

MFC的DLL精讲

MFC的进程和线程精讲

 

2、进阶篇:主要讲解游戏设计以及游戏引擎

游戏设计思想

游戏设计精髓

游戏引擎概述

游戏引擎指点

 

3、设计篇:水果忍者游戏设计算法精讲

子画面碰撞检测

水果刀与子画面碰撞检测

背景回滚算法

自由落体算法

刀光笔触算法

2D粒子效果的实现

4、实战篇:水果忍者代码实现部分演示与精讲

完成了游戏引擎的设计。该游戏引擎现阶段是一个2D游戏引擎,能够跟踪游戏上的所有元素,实现了动画播放,碰撞检测,释放资源等基本功能。同时还提供了游戏进入界面,人物动画设计和图像加载等相关接口和类,便于游戏的扩展实现。完成了游戏图片元素的收集和动画元素的收集。其中主要包括的图片有:水果,炸弹,道具等;涉及到的动画:炸弹爆炸动画,启动菜单动画,笔触动画等。

四、本系列课程所涉及到的技术:

MFC类库知识

MFC消息映射的实现

模板与泛型编程精讲

容器与算法

MFC中的DLL编程

MFC中的多进程和多线程编程

Win32核心编程

子画面碰撞检测

水果刀与子画面碰撞检测

背景回滚算法

自由落体算法

刀光笔触算法

2D粒子效果的实现

游戏引擎概述

游戏引擎指点

 

五、课程大纲

01.水果忍者游戏简介

02.水果忍者游戏基础篇之vector

03.水果忍者游戏基础篇之vector(续)

04.水果忍者游戏基础篇之list用法精讲

05.水果忍者游戏基础篇之list用法精讲(续)

06.水果忍者游戏基础篇之关联容器精讲

07.水果忍者游戏基础篇之关联容器精讲(续)

08.水果忍者游戏基础篇之类的初始化

09.水果忍者游戏基础篇之类的初始化(续)

10.水果忍者游戏基础篇之模板精讲

11.水果忍者游戏基础篇之泛型编程

12.水果忍者游戏基础篇之泛型编程(续)

13.水果忍者游戏基础篇之自写String类

14.水果忍者游戏基础篇之MFC窗口、菜单和消息框

15.水果忍者游戏基础篇之MFC窗口、菜单和消息框(接上讲)

16.水果忍者游戏基础篇之MFC窗口、菜单和消息框(取消菜单栏)

17.水果忍者游戏基础篇之MFC窗口、菜单和消息框(取消菜单栏)接上讲

18.水果忍者游戏基础篇之MFC窗口、菜单和消息框(更新命令用户接口)

19.水果忍者游戏基础篇之MFC窗口、菜单和消息框(更新命令用户接口)

20.水果忍者进阶篇之游戏引擎精讲

21.水果忍者进阶篇之游戏引擎精讲(头文件定义接上)

22.水果忍者进阶篇之游戏引擎精讲(源文件实现)

23.水果忍者进阶篇之游戏引擎精讲(接上)

24.水果忍者进阶篇之游戏引擎精讲(源文件接口实现)

25.水果忍者进阶篇之游戏引擎精讲(子类的声明和实现)

26.水果忍者设计篇之算法精讲

27.水果忍者设计篇之算法精讲(水果刀与子画面的碰撞检测)

28.水果忍者设计篇之算法精讲(水果刀与子画面的碰撞检测)

29.水果忍者设计篇之类的设计

30.水果忍者实战篇之代码实现

31.水果忍者实战篇之Bitmap类的实现

32.水果忍者实战篇之Bitmap类的实现(源文件)

33.水果忍者实战篇之Bitmap类的实现(源文件)

34.水果忍者实战篇之Bitmap类的实现(源文件create接口的实现)

35.水果忍者实战篇之Bitmap类的实现(源文件Draw接口的实现)

36.水果忍者实战篇之Bitmap类的实现(源文件Draw接口的实现)

37.水果忍者实战篇之GameLogicController类的实现

38.水果忍者实战篇之GameFont类的实现

39.水果忍者实战篇之GameFont类的实现(源文件)

40.水果忍者实战篇之GameFont类的实现(源文件)

41.水果忍者实战篇之Background类的实现

42.水果忍者实战篇之BackgroundLayer类的实现

43.水果忍者实战篇之BackgroundLayer类的实现(源文件)

44.水果忍者实战篇之BackgroundLayer类的实现(源文件Draw实现)

45.水果忍者实战篇之Sprite类的实现

46.水果忍者实战篇之Sprite类的实现(头文件)

47.水果忍者实战篇之Sprite类的实现(源文件)

48.水果忍者实战篇之Sprite类的实现(源文件)

49.水果忍者实战篇之Sprite类的实现(draw函数的实现)

50.水果忍者实战篇之Sprite类的实现

51.水果忍者实战篇之Sprite类的实现(源文件)

52.水果忍者实战篇之SceneBackground类的实现

53.水果忍者实战篇之SceneBackgroundLayer类的实现(源文件)

54.水果忍者实战篇之SceneBackgroundLayer类的实现(源文件--update函数)

55.水果忍者实战篇之SceneBackgroundLayer类的实现(源文件--update函数)

56.水果忍者实战篇之SceneBackgroundLayer类的实现(源文件--Draw函数)

57.水果忍者实战篇之ScrollingBackground类的实现

58.水果忍者实战篇之VirtualBackground类的实现

59.水果忍者实战篇之VirtualBackground类的实现(update)

60.水果忍者实战篇之VirtualBackground类的实现(draw)

61.水果忍者实战篇之StackBackground类的实现

62.水果忍者实战篇之MouseBrush类的实现

63.水果忍者实战篇之MouseBrush类的实现 

64.水果忍者实战篇之SharpenBrush类的实现

65.水果忍者实战篇之SharpenBrush类的实现 (源文件中drawbrush函数的实现)

66.水果忍者实战篇之FontController类的实现

67.水果忍者实战篇之FontController类的实现 (源文件)

68.水果忍者实战篇之SpriteController类的实现

69.水果忍者实战篇之SpriteController类的实现(源文件)

70.水果忍者实战篇之StarryBackground类的实现

71.水果忍者实战篇之FruitController类的实现

72.水果忍者实战篇之ParticleController类的实现

73.水果忍者实战篇之Actor类的实现

74.水果忍者实战篇之Actor类的实现 (源文件)

75.水果忍者实战篇之Fireman类的实现

76.水果忍者实战篇之Fireman类的实现 (源文件)

77.水果忍者实战篇之Shooter类的实现

78.水果忍者实战篇之ScoreFont类的实现

79.水果忍者实战篇之Fruit类的实现

80.水果忍者实战篇之Fruit类的实现 (源文件)

81.水果忍者实战篇之KnifeParticle类的实现

82.水果忍者实战篇之KnifeParticle类的实现(源文件)

83.水果忍者实战篇之Particle类的实现

84.水果忍者实战篇之Particle类的实现 (update函数)

85.水果忍者实战篇之ParticleTrace类的实现

86.水果忍者实战篇之ParticleTrace类的实现 (源文件)

87.水果忍者实战篇之SuperParticle类的实现

88.水果忍者实战篇之GameEngine类的实现

89.水果忍者实战篇之GameEngine类的实现 (头文件)

90.水果忍者实战篇之GameEngine类的实现 (头文件中的访问方法)

91.水果忍者实战篇之GameEngine类的实现(源文件)

92.水果忍者实战篇之GameEngine类的实现(源文件)

93.水果忍者实战篇之GameEngine类的实现(游戏引擎常规方法Initialize的实现)

IT营(itying.com)官网转载的文章、图片等资料的版权归版权所有人所有,因无法和版权所有者一一联系,如果本网站选取的文/图威胁到您的权益,请您及时和IT营站长联系。
我们会在第一时间内采取措施,避免给双方造 成不必要的损失。IT营(itying.com)官网商品均为虚拟商品,因发货后无法收回,故购买后不支持退款,请悉知。有问题可以联系客服咨询(客服上班时间:8:00-21:30)。

在线客服:点击这里给我发消息      点击这里给我发消息      有事联系我哦   

公安备案:鄂公网安备 42050202000392号  ICP备案证书号:鄂ICP备17020565号-1