zoukankan      html  css  js  c++  java
  • cocos2d-x第一次学习

    cocos2d-x第一次学习笔记 ,Windows下的结构图,及创建命令

    一.准备工具:

    1. 需要电脑安装python2.7
    2. 电脑安装有visual studio 2013 or 2019
    3. cocos2d-x下载cocos2d-x windows版本,  这里我使用的是,V3.17.2版本。
    1. 解压压缩包,得到如下格式(Project,游戏资源动画是我自己创建的文件夹):

    二.创建项目:

    1. 使用cmd命令切换到cocos2d-x目录下,然后运行setup.py,我们手动设置SDK,和NDK路径(这两个路径用来编译安卓的如果没有可暂时空着),以及cocos2d-x的环境命令。

    2. 接着用cmd命令切换到:解压的cocos路径/tools/cocos2d-console/bin目录下然后输入命令进行创建

      • cocos.py new 项目名字 -p 包名 -l 语言(cpp or js)

      • 例如 cocos.py new learn01 -p com.lxl.learn01 -l cpp 这里创建的是使用c++语言的项目,回车,将会在当前目录生成一个helloworld的项目

      • 进入目录有以下几个文件

      • 第一个文件夹是公共源代码区,所有的核心代码也将写在这里面

      • 第二个是cocos需要用到的一些工具,比如其他平台的构建工具等

      • 最后一个文件夹是存放资源的路径

        • 生成的工程有4个,android,mac,linux,win32,这里主要用win32,进去文件夹打开learn01.sln

    三.项目结构

    1. 从自己观察其他几个项目文件的入口点可以得知,AppDelegate.cpp是cocos2d-x进入游戏主循环前的入口点

    2. 打开这个AppDelegate.h 可以看到声明了除构造和虚构的其他4个虚函数,

      • 第一个初始化opengl上下文,应该是跟平台相关的一些属性
      • 第二个是对游戏开始时做初始化操作,场景加载等
      • 第三个是游戏处于后台运行时所调用
      • 第四个是游戏从后台展现在前台是调用
    3. 查看第二个方法

    可以看到设置分辨率时进行了相应的转换,在代码前面可以看到:

    在不通平台时自动进行了合适的适配

    接下来:

    cocos使用了一个静态方法createScene创建了该实例,并将该场景让其进入游戏的主循环,

    进入HelloworldScene.h的头文件声明,可以看到:

    他是继承了Scene的这个类,并且有个静态的createScene方法,继续进去ctrl+鼠标左键

    可以看到其定义是返回了一个自己的静态方法create,在HelloworldScene.h中下面有一个宏,点进去看看实现

    这里发现是,创建了一个自己类型的对象,并且还调用了init方法,并返回了自身,由此可以知道,这个宏是创建对象的并且进行了两次初始化,一个是构造方法,一次是调用了init方法,并将其设置了自动回收(未完!)

    最后运行一下程序,编译时间比较长: 

  • 相关阅读:
    Mining of Massive Datasets – Link Analysis
    在web.config里修改配置从而对匿名用户拒绝提供某资源
    SharePoint 2010中的lockdown模式
    Managed Metadata Service介绍系列 之二
    Managed Metadata Service介绍系列 之一
    ASP.NET基础再出发系列 之一
    SharePoint的web.config文件中的validateRequest
    创建Business Data Connectivity Service之后遇报错“There are no addresses available for this application”
    [经典文章翻译] [未完工] [96更新] 在.NET Framework中针对RealTime技术的性能注意事项
    SharePoint 2010中, SPEventReceiverBase.EnableEventFiring和DisableEventFiring都已废弃(obsolete), 应使用SPEventReceiverBase.EventFiringEnabled
  • 原文地址:https://www.cnblogs.com/lxlw/p/11748907.html
Copyright © 2011-2022 走看看