游戏开发

Unity游戏开发:Unity C#速成

為{幸葍}努か 提交于 2019-11-29 00:39:57
专为Unity设计的C#课程 本课程是针对在Unity中使用C#编写脚本的速成课程,适合零基础又想快速用脚本进行Unity游戏开发的同学。 在学习完本课程后可以学习Unity脚本课程。 如果想要完全利用C#所有强大的功能,可以去完整的学习C#零基础课程和面向对象进阶课程。 预估学习 & 练习时间: 7 小时 难易度:入门 基础部分 游戏脚本课程简介 Unity中使用C# 变量和函数 数据类型 类 属性和方法 操作符 枚举 分支 数组 循环 进阶部分 List和Dictionary 继承和多态 成员隐藏和方法重写 接口 泛型 命名空间 扩展方法 委托 特性 来源: https://blog.csdn.net/paws3d_com/article/details/100138210

Unity游戏开发:Unity脚本应用

戏子无情 提交于 2019-11-29 00:39:49
Unity的C#脚本课程 本课程讲解在Unity中使用C#脚本,通过Unity提供的API和场景逻辑进行交互的基础部分。 学习本课程之前需要先完成C#基础课程或者Unity C#速成课程。 完成本课程后即可在各种Unity实践课程中使用脚本来编写游戏逻辑。 预估学习 & 练习时间: 10 小时 难易度:进阶 基础部分 Unity脚本课程简介 开发环境 Unity脚本组件 脚本成员操作 Awake,Start Time.deltaTime GameObject操作 Component操作 进阶部分 向量运算 移动和旋转 四元数 Input LookAt 插值 协程 射线检测 碰撞触发器 来源: https://blog.csdn.net/paws3d_com/article/details/100163588

三年游戏开发经历回顾

北城余情 提交于 2019-11-28 19:30:46
游戏行业变化的太快,要想开发一款成功的游戏并不如想象中那么容易,下面就给大家分享下我在成为独立游戏开发者的这三年是如何走过来的。 首先,我浅谈一下作为多年游戏开发的感受,在团队项目中总是会处于一个微妙的位置,尤其是如果只作为游戏开发而不是管理层的话。很多时候你能够看到事情出问题,然而并没有能力去改变任何情况。这样的例子我看过太多了。我常把这比喻成“就在你眼前发生了慢动作版本的火车事故,而你只能做一个观众”。这样会让人很不爽。最糟糕的是,你的命运被掌握在别人的手里。对于这一点,我个人感受不太好-我不喜欢失去自己的掌控权。这是一个我之后最终突破束缚选择成为独立游戏开发者的重要原因。 以上内容读着给人感觉像是游戏行业一直都很糟糕,但它并不是。我也曾有一些很棒的经历,与一些优秀的人共事于优秀的项目。如果你正打算初入游戏行业,并且犹豫是该完全做独立游戏,还是该去某个工作室积攒经验,我强烈建议你先去一个工作室。你完全有机会在那儿度过很棒的一段时光。 回想到我在进入游戏开发行业之前,我一直是作为保险业务员中的一员,我当时每天与形形色色的人打交道,每天都为当月的业绩发愁。和家人商讨,还是希望能够学习一定的技术知识,并且我自己也十分喜欢游戏。 之前一直是自学,在机缘巧合下,我需要进行松鼠大作战的项目学习,在搜索引擎里搜到的第一条就是优梦创客的文章。当时阅读完这篇文章,让我茅塞顿开,让我深深的记住了

学习Python最好的途径—激发自己的学习兴趣!

青春壹個敷衍的年華 提交于 2019-11-28 01:26:39
Python是当下国内最为火爆的编程语言,没有之一! Python 的概念 “人生苦短,我用Python”。这句戏言真实反映了Python语言的江湖地位。那么,要快速上手和进阶Python编程,有什么好途径呢?我推荐游戏开发。 游戏开发激发学习热情 作为一名拥有十余年程序设计教学经验的老师,我清楚地记得,当告诉学生们课程任务有俄罗斯方块游戏开发的时候,部分同学在课堂上热切地喊出“好耶”,部分同学鼓起掌来,大家一副跃跃欲试的神情。 那是我在2014级软件工程专业教学改革试点班中做的尝试。开设的课程叫作“大学计算机基础B”,一共16周,64学时。前面第11周讲授计算机基础和Python编程,后面5周学生学习C/C++(因后续课程需要)。后5周的大作业就是基于Win32 API开发俄罗斯方块游戏程序。我多少有些担心学生是否做得下来,然而到验收的那一天,我有些吃惊。大部分同学的作品都明显超出了作业要求的标准。 尽管有很多因素(比如强有力的教辅)促成了这样的好结果,但我认识到一个重要的原因是“激发了学生们的学习热情”。是的,游戏开发有这个效果。有学生告诉我,他把自己的作品发布到高中同学群,让同学们玩玩,结果赢得赞誉一片。我察觉到了学生嘴角露出了小小的得意。有学生开夜车编程序,搞到凌晨两三点都不想去睡觉。所以呢,我百分百肯定,游戏开发是学习Python编程的好途径。 游戏开发门槛低

Cocos2dx游戏开发系列笔记3:牛刀小试->忍者飞镖射幽灵的Demo

試著忘記壹切 提交于 2019-11-27 20:28:25
就是这个例子,应该很简单,主要用到的有:精灵的移动,触摸,碰撞检测。 赶紧搞定,待会还要陪哲哲来几局爱消除。 首先在Scene初始化方法里添加精灵: CCSprite *player =CCSprite::create("Player.png",CCRectMake(0,0,27,40)); player->setPosition(ccp(origin.x+ player->getContentSize().width/2,origin.y+visibleSize.height/2)); this->addChild(player,1); 注意,以前的版本初始化方法叫spriteWithFile 修改Scene背景色 class HelloWorld : public cocos2d::CCLayerColor if ( !CCLayerColor::initWithColor(ccc4(255,255,255,255)) ) 随机在屏幕右侧添加幽灵 void HelloWorld::addTarget() { CCSprite *target=CCSprite::create("Target.png",CCRectMake(0,0,27,40)); CCSize winSize=CCDirector::sharedDirector()->getWinSize(); int

Cocos2dx游戏开发系列笔记4:怎样新加一个Scene类?

时光毁灭记忆、已成空白 提交于 2019-11-27 20:27:57
有点晚了,眼睛开始痒痒了,赶紧记录点东西 刚请教了sw同学,跟听D也扯了会,苦命的孩子,今晚他们游戏发新版,前端必须加班,骨头好是羡慕。。。 前几个笔记的例子都是zai一个Scene.cpp里完成的,想新加一个,结果老报找不到类。 解决方法: 把新加的类从 prog.win32中拷贝到classes中,然后项目里倒入现有项,ok! 新加了一个菜单页,打算放几个menu 图片资源可以从cocos2dx的demo里搜 [cpp] view plain copy CCSize vSize=CCDirector::sharedDirector()->getVisibleSize(); CCPoint origin=CCDirector::sharedDirector()->getVisibleOrigin(); CCLabelTTF *label=CCLabelTTF::create( "LazyGame" , "Arial" ,33); label->setPosition(ccp(vSize.width/2,vSize.height-label->getContentSize().height)); this ->addChild(label); CCMenuItemImage* item1 = CCMenuItemImage::create( "btn-play-normal.png

Cocos2dx游戏开发系列笔记9:android手机上运行《战神传说》,并解决横竖屏即分辨率自适应

泄露秘密 提交于 2019-11-27 20:27:43
上节说到cygwin下成功编译出so文件,下面我们要把游戏运行在android上。 开始干活! 其实步骤可以参考 Cocos2dx游戏开发系列笔记6:怎样让《萝莉快跑》的例子运行在vs和手机上 1 用eclipse打开这个项目,注意不要选择 Copy projects into workspace。因为可能一些配置用的是相对路径,不然可能会找不到一些东西。 2 修改项目属性: (1)C/C++ builder的build command为NDK目录下的ndk-builder (2)添加C/C++ Builder Environment NDK_MODULE_PATH,值为cocos2dx目录和cocos2dx目录\cocos2dx\platform\third_party\android\prebuilt。 好了,运行吧,一边看着旁边的视频,一边关注着console的编译动态。 如果一路没错误,固然好, 不过没有bug,就不长经验了,而且本文也没啥好写的了。 T。T 没通过,bug如下 [html] view plain copy [2013-12-07 20:16:06 - MoonWarriors] Unable to resolve target 'android-8' [2013-12-07 20:34:04 - Dex Loader] Unable to execute

Cocos2dx游戏开发系列笔记6:怎样让《萝莉快跑》的例子运行在vs和手机上

风流意气都作罢 提交于 2019-11-27 20:27:26
感谢听D同学赞助的Demo。 那怎样让它运行在vs中呢: 1 使用cocos2d-x-2.2\tools\project-creator文件夹中的create_project.py脚本,生成一个demo。 2 拷贝Classes和Resources文件夹到刚生成的demo对应文件夹下 3 用vs打开脚本生成的cocos2dx demo,此时那个项目下只有默认的几个类,我们需要手动添加其他的cpp和h文件 4 修改游戏 ,这一步可有可无!急于搭配环境的同学可以跳过这一步。但骨头觉得修改游戏是最大的乐趣。 找到GameMainScene.cpp,注释掉99行100行,这样主角永远也掉不下去了。 游戏整体节奏很慢,可以加快! 找到GameObjMap.cpp中所有的 CCMoveBy函数,如CCMoveBy::create(20,ccp(-960,0)), 将20改为2,游戏整个提速10倍。 就是下图那样。 // if(hero->state == 0) // isherodrop(); 5 接下来需要让游戏运行在手机上。 首先拷贝Resources里的所有资源到\proj.android\assets文件夹下 5.5 修改proj.android\jni里的android.mk文件 ,将所有的cpp文件加上。这条容易漏! 6 用eclipse打开这个项目 ,注意不要选择 Copy

Cocos2dx游戏开发系列笔记1:一个崭新的开始,cocos2dx2.2+ndkr9+Cygwin

十年热恋 提交于 2019-11-27 05:37:51
Android开发者做cocos2dx最大的绊脚石,不是c++,而是环境的搭建... 骨头也是费了半天劲才终于在真机上看到了那个类似猕猴桃的头,这里简单记录一下。 环境:(算比较新了2013.11.17) cocos2dx 2.2 ndk r9 cygwin vs2012 adt 22.3.0 andorid 4.4 步骤关键点: 用cygwin编译时需要 改权限: takeown /f * /A /R,icacls * /t /grant:r everyone:f 添加ndk路径:home文件夹的.bash_profile文件:NDK_ROOT=/cygdrive/d/eclipse/android-ndk-r9,export NDK_ROOT 进项目编译时路径要改为反斜杠 用eclipse打开项目时需要 项目,属性,c/c++ build,编译命令改为:D:\Java\android-ndk-r9\build_native.sh 环境项新增环境变量:D:\Java\cocos2d-x-2.2;D:\Java\cocos2d-x-2.2\cocos2dx\platform\third_party\android\prebuilt android项目adk选的4.4 配置文件中,用的默认的android:minSdkVersion="9",很多教程说要修改,我这个版本没改。

【游戏开发】小白学Lua——从Lua查找表元素的过程看元表、元方法

流过昼夜 提交于 2019-11-26 23:00:43
【游戏开发】在Lua中实现面向对象特性——模拟类、继承、多态 阅读目录 一、简介 二、前提知识 三、Lua中实现类、继承、多态 四、总结 回到顶部 一、简介   Lua是一门非常强大、非常灵活的脚本语言,自它从发明以来,无数的游戏使用了Lua作为开发语言。但是作为一款脚本语言,Lua也有着自己的不足,那就是它本身并没有提供面向对象的特性,而游戏开发是一项庞大复杂的工程,如果没有面向对象功能势必会为开发带来一定的不便。不过幸好Lua中有table这样强大的数据结构,利用它再结合元表(metatable),我们便可以很方便地在Lua中模拟出类、继承和多态等面向对象编程具有的特性。 回到顶部 二、前提知识   按照惯例,我们还是先来熟悉一下必要的前提知识,以便方便我们理解后续的代码。 1.表(table)   (1)table 是 Lua 的一种数据结构,用于帮助我们创建不同的数据类型,如:数组、字典等;   (2)table 是一个关联型数组,你可以用任意类型的值来作数组的索引,但这个值不能是 nil,所有索引值都需要用 "["和"]" 括起来;如果是字符串,还可以去掉引号和中括号; 即如果没有[]括起,则认为是字符串索引,Lua table 是不固定大小的,你可以根据自己需要进行扩容;   (3)table 的默认初始索引一般以 1 开始,如果不写索引,则索引就会被认为是数字