`

Unity3D系列教程–使用免费工具在Unity3D中开发2D游戏 第二节(上)

 
阅读更多

声明: 本博客文章翻译类别的均为个人业余时间翻译,版权所有。转载请注明出处:http://www.wjfxgame.com,另外本人的CSDN博客:http://blog.csdn.net/ml3947

译者说明:

公司目前的3D项目由OGRE 3D转为Unity3D了,由于整个3D项目组只有我对Unity3D比较熟,所以前期研究工作都是我来完成的。截至今天,基本上一些像Unity3D双屏3D模式啊,控制鼠标,模拟鼠标事件,调用OpenCV等重点技术问题都已完美解决,所以我们这边TM,MD和台北开了紧急会议,全面转向Unity3D。而且TM居然还申请到了一个月学习时间- -!!让我给大家培训一下Unity3D的相关内容。不过Unity3D这个东西,跟其他的很多技术类似,入门容易精通难,大部分人都只是在做一些很简单基础的东西,还好我也可以通过这一段宝贵的时间来提高自己,不用老是在晚上挤时间了。JavaFX那个游戏引擎的话,进度就比较慢了,但在我计划中,本身也就是慢慢做,不会花很多的时间在上面,因为JavaFX前景还不是很明朗,我也在等着JavaFX的下一个重大更新。

废话又说了一堆,就像上一节所说,写博客人的通病....

上一节中,我们主要介绍了一些我们游戏开发中需要用到的免费的插件和工具,以及他们如何初始化。这一节中,我们将会学习如何创建关卡,然后完成我们这个游戏的第一关。


我们在第一节讲述的所有插件中,最主要的还是Orthello 2D。Orthello在新的版本中更新了一些很酷的新特性。请确认你正在使用1.6a或更新的版本。


Build Settings

File -> Build Setting ,选择WebPlayer(如果你喜欢的话,也可以使用PC and Mac Standalone),然后关闭Build Setting窗口。

Player Settings

Edit -> Project Setting -> Player, 在Per-Platform Settings下面点击Resolution and Presentation,然后改变 Screen Width 为 800, Screen Height 为 600.

Render Settings

由于我们通常不会在2D游戏中使用Unity3D的灯光系统,我们必须通过调整Unity3D默认的环境光来让游戏场景显得更加明亮。步骤如下:
1. Edit -> Render Settings...

2. 点击 Ambient Light 然后,把它的颜色改变为(255,255,255,255).
Orthello 2D初始化设置
1. 在Unity的Project的视图里,进入Orthello -> Objects,然后将 OT object拖到项目场景中。

2. 在 Hierarchy 视图里,点击 OT object将它展开,然后点击 View。在 View的属性下,设置 Pixel Perfect Resolution 为 800 x 600.

3.更改Custom Size为 10.

现在,如果你在 Hierarchy中选中 Main Camera, 你将会看到 它的Projection已经被更改为 Orthographic 而且 Size 被改为 10. 当你将OT object添加到场景的时候,Orthello 会自动将它的Projection从Perspective更改为Orthographic。而且当我们改变 Orthello View 的 Custom Size 的时候, Main Camera的Size也会改变。

经过一系列的实验,我发现了,在设置为800 x 600的分辨率 和 size为 10 的情况下,一个1 x 1 x 1的Cube将会在屏幕中占用30的像素。这样准确的像素大小,将让我们在制作关卡的时候创建网格变得更加容易。

当你完成了以上步骤后, 你的工程文件应该看起来像下图。注意,我已经在场景中增加了一个Cube。

制作关卡的Sprite Atlas

现在你已经知道所有的初始化设置步骤了。 是时候让一切都变得更加有趣。我们在这个游戏中的关卡贴图主要包含如下几个简单的部分: 砖块(可以被挖开的),混凝土(不能被挖开的),梯子和绳子。
下载精灵图片,然后解压到任何位置。(译者注:详细的请看最下面的文件下载地址,里面会包含精灵的)。

打开TexturePacker 然后拖动所有的.png文件从sprites/leve和sprites/shoot文件夹到 Sprites的面板。

Texture Settings / Layout

设置 Algorithm为Basic,取消Trim的选中,取消Enable Auto Alias的选中。

Texture Settings / Output

将Data的格式设置为cocos2d。在Data File下,点击"..."按钮,浏览你想要存放你的精灵的目录(我把它放在项目的Assets/SpriteAtlases中),将名称改为level 然后点击Save保存。
TexturePacker将会自动添加.plist到Data File中,不过Unity需要文件为.xml,所以在输入框中,我们将.plist改为.xml.
现在这个Texture File的路径应该已经被设置为跟.xml相同的路径了。
如果你已经做了上面的步骤,你的TexturePacker应该看起来下如下图:
现在如果你点击Publish,然后返回到Unity,你可以看到一个SpriteAtlases文件夹,而且还有Sprite Atlas和一个Data文件在里面。
我们需要在Unity里对Sprite Atlas做一些改变让它看起来正确。
1. 在Project视图里选择level.png,把Filter Mode改为Point
2. 点击Override for Web,将 Format 设置为 Truecolor然后点击Apply应用。

制作关卡精灵

现在是时候使用Orthello,然后把Atlas转变为精灵对象了。

The Sprite Container

1.在Unity3D的Project视图中,展开Orthello文件夹:Orthello -> Objects -> Sprites - > SpriteAltas然后拖动SpriteAtlas-Cocos2D到Hierarchy中。
2. 在Hierarchy视图中,展开OT object,你将会在Containersobject下面看到一个类似与"Container(id=-684)"的东西。这个Container将会收容我们所有的关卡精灵。我们可以将它改名为level。
3. 将level.png从SpriteAtlases文件夹拖动到"OTSprite Atlas Cocos 2D"脚本中的Texture属性中。
4. 将level.xml从SpriteAtlases文件夹拖动到Atlas Data File属性中。现在当你把Atlas Data属性展开,你可以看见我们用TexturePacker打包的图片里的所有的图块了。

如下图所示:

这一章有点长,由于现在时间也不早了,我决定把它分为上下两节,明天晚上继续翻译。其实各位朋友感兴趣的话,也可以等我全翻译完了再看。
这节所用的贴图资源下载地址:点击

转载请注明出处:http://blog.csdn.net/ml3947

分享到:
评论

相关推荐

    Unity 3D网络游戏实战(全)+Unity3D手机游戏开发第2版金玺曾+Unity3D游戏开发宣雨松合集压缩包

    《Unity3D手机游戏开发第2版》可能由金玺曾撰写,这本书可能涵盖了针对移动设备的游戏开发技巧。在移动平台上,开发者需要关注性能优化,因为移动设备硬件资源有限。这包括图形渲染优化、内存管理和代码效率提升。...

    某U3D游戏培训机构 Unity3D游戏开发教程_软件游戏开发培训学校

    Unity3D游戏开发教程是针对想要进入游戏开发领域的学习者设计的一系列教学资源。这个教程由某知名U3D游戏培训机构提供,旨在帮助学员掌握Unity3D引擎的基础知识和高级特性,以实现游戏的创建和优化。教程内容涵盖从...

    unity3d 圣典 一些小屋资源包

    Unity3D是一款强大的跨平台游戏开发引擎,被广泛用于创建高质量的3D和2D游戏、虚拟现实(VR)以及增强现实(AR)应用。"Unity3D 圣典"很可能是指一系列关于Unity3D的教程或指南,它可能涵盖了从基础概念到高级技术的全面...

    Unity3D 太空射击游戏 第16、17讲(下)

    在本系列教程“Unity3D 太空射击游戏 第16、17讲(下)”中,我们将深入探讨如何利用Unity3D引擎构建一款刺激的太空射击游戏。这个零基础的学习教程旨在帮助初学者快速掌握Unity3D的基础以及如何应用它们来创建互动...

    Unity3D 808个中文教程

    Unity3D是一款强大的跨平台游戏开发引擎,广泛应用于制作2D和3D游戏、虚拟现实(VR)和增强现实(AR)应用。"Unity3D 808个中文教程"是一个全面的学习资源集合,旨在帮助新手和进阶开发者深入理解和掌握Unity3D的各项...

    Unity3D期末

    中山大学数字媒体方向的孙伟老师的课程,显然旨在教授学生如何利用Unity3D进行项目开发,通过一系列的教程帮助学生掌握3D游戏制作的基本技巧。 首先,我们来看一下提供的文件名称,它们揭示了Unity3D学习的几个关键...

    Unity3D从入门到精通3本

    通过以上六个部分的系统学习,读者将具备独立开发Unity3D游戏的能力,无论是简单的2D游戏还是复杂的3D项目,都能游刃有余。"Unity3D从入门到精通"系列书籍覆盖了Unity开发的各个方面,是初学者理想的自学资料,也是...

    蛮牛 unity游戏教程1-8季整理版

    本季课程聚焦于2D游戏开发,涵盖了Unity的2D工具集,如Sprite管理、2D物理引擎、UI系统、动画控制器等,使学员能够构建完整的2D游戏项目。此外,还介绍了碰撞检测和2D光照效果,以提升游戏的视觉表现力。 第三季:...

    Unity中2D特效插件

    Unity是世界上最流行的游戏开发引擎之一,它不仅支持3D游戏制作,而且在2D游戏领域也有着强大的功能。"Unity中2D特效插件"这个主题聚焦于如何利用Unity为2D游戏添加视觉冲击力和吸引力。在Unity中,2D特效能够极大地...

    Unity5.6开发捕鱼达人视频11、12、13教程下载

    Unity5.6是一款广泛应用于游戏开发的跨平台引擎,尤其在3D和2D游戏制作领域,它以其强大的功能和易用性深受开发者喜爱。在这个"捕鱼达人"的系列教程中,我们聚焦于如何利用Unity5.6进行游戏开发,通过第11、12、13集...

    unity-卡牌游戏开发

    Unity支持2D游戏开发,使用Sprite Renderer和2D物理系统,同时也可以结合3D元素为游戏增添立体感。 5. **编程基础** 使用C#编程语言进行逻辑控制,实现游戏规则。例如,编写脚本处理卡牌抽选、战斗计算、卡组管理...

    unity开发的教程.doc

    - **2D游戏项目**:可以从简单的2D平台游戏开始,逐步增加难度。 - **3D游戏项目**:尝试开发一款3D射击游戏或冒险游戏,挑战更高的技术水平。 - **AR/VR项目**:如果对AR/VR感兴趣,可以尝试制作相关的体验项目,...

    unity3d-NGUI插件

    在Unity3D中,用户界面(UI)的构建是游戏开发过程中的重要环节,它能帮助玩家与游戏进行交互,提供信息反馈,以及控制游戏流程。在早期版本中,Unity的内置UI系统相对较弱,这时第三方插件如NGUI应运而生,为开发者...

    Unity游戏引擎的基础入门视频教程01-04

    Unity游戏引擎是一款强大的跨平台开发工具,被广泛用于制作2D和3D游戏、虚拟现实(VR)和增强现实(AR)应用。本基础入门视频教程涵盖了Unity引擎使用的一些核心概念,适合初学者进行学习。 在第一部分"教程内容简介"中...

    Unity游戏源码2-81卡通赛车赛艇游戏HighroadEngine1.1

    它不仅能够创建3D和2D游戏,还适用于构建虚拟现实(VR)、增强现实(AR)应用以及实时3D动画等项目。由于其强大的功能和易用性,Unity已成为全球最受欢迎的游戏开发工具之一。 #### 知识点二:卡通赛车赛艇游戏类型 ...

    游戏开发教程.docx

    - **开发小型游戏项目**:从简单的2D游戏开始尝试,随着技能的提升逐步挑战更复杂的项目。 - **参与游戏开发社区**:加入游戏开发论坛或社交媒体群组,如Unity论坛、Reddit上的r/gamedev等,可以了解到最新的行业...

    C#ForUnity游戏开发系列教程--入门篇

    大家通过对课程的系统学习,学成之后就可以利用Unity进行独立开发出第一人称射击游戏、2D游戏、塔防游戏、生存冒险游戏等。整个学习的过程就是在不断的开发游戏,在实战中学习,在实战中提高,可以更加的出效果,让...

    U3D官方教程PPT:Tanks

    U3D官方教程PPT:Tanks是针对Unity3D的官方教程,主要目标是引导用户通过一系列步骤创建一个坦克游戏。该教程内容覆盖项目与场景设置、坦克的创建与控制、摄像机、健康系统、弹壳、射击机制、游戏管理器以及音频等多...

    ANDROID_2游戏开发实战宝典.part3.zip

    其中,Cocos2d-x适合2D游戏,Unity支持2D和3D游戏,而Unreal Engine以强大的3D渲染能力著称。这些引擎都有丰富的文档和社区支持,可以帮助开发者快速上手。 Android游戏的用户界面(UI)设计同样重要,良好的UI可以...

    unity4.x从入门到精通(完整版)

    Unity3D是一款强大的跨平台游戏开发工具,尤其在制作3D和2D游戏方面具有显著优势。本教程“Unity4.x从入门到精通(完整版)”旨在为初学者提供全面的学习路径,从基础概念到高级技巧,帮助你掌握这款引擎的所有核心...

Global site tag (gtag.js) - Google Analytics