Unity3D入门其实很简单

  在上次发布拙作后,有不少童鞋询问本人如何学习Unity3D。本人自知作为一名刚入门的菜鸟,实在没有资格谈论这么高大上的话题,生怕误导了各位。不过思来想去,决定还是写一些自己的经验,如果能给想要入门U3D的您一些启发,便再好不过了。

如何入门

  谈起自己是如何入门U3D,这还得从一年半前说起。那是在一个月黑风高的夜晚...(此处省略一万字)。就这样,我对这款游戏引擎产生了浓厚的兴趣,走上了自学的道路。

  相比网络上零散的教程,个人更倾向于更为系统的书籍。一番搜索后,我发现了这本《Unity 3.x游戏开发经典教程 》。

  

  这本书中较为系统讲解了U3D的基础知识,如U3D界面,脚本,物理引擎,地形,GUI,粒子系统,动画等。然后使用这些基础知识,一步一步构建了一个小游戏。

  略微遗憾的是,书中讲解的粒子系统和动画系统在新版的Unity中被对应的新系统所取代。但瑕不掩瑜,作为一本入门级的教程,她真的很成功。

  还有一本另一本不错的书籍《Unity 3D游戏开发》。

  

  这本书是国内的一位牛人写的,与上一本书有些类似,都是讲解了各个基础内容,最后构建了一个小游戏。这两本书,随便挑一本,作为入门足够了。

  正如您所知道的,3D游戏的开发少不了一定的3D数学知识。在此,本人向您推荐另一本书——《3D数学基础:图形与游戏开发》。此书列出了3D游戏开发所需要了解的基本3D数学概念,也是一本很经典的教材。

   

  当然书中的内容不可能面面俱到,有些内容不是很详细,这时候U3D官网超赞的教学视频就派上用场了。

  

   正如,您再上图所看到的,包含了很多方面内容,尤其是其中的脚本篇,涉及到了U3D绝大多数在脚本开发中的基础知识和重点难点,如Transform,Coroutine, Vector3,Quaternion等,配合官网的脚本参考,简直无敌了。

   当然了,这些视频都是用英文讲解的。此时,可能有童鞋会有羞涩地低下头:人家英语不好…相信我,这里的视频中没有很生僻的术语,没有复杂的语法。第一遍没听懂,没关系,将视频回退后继续听,多听几次,你会听懂的

   需要说明的是,官网中的视频是托放在youtube上的,可能有些童鞋访问不了,不过没关系,有好心的网友已经帮我们下载好了。

   按照书中的编排顺序作为你的学习步骤,循序渐进,结合官网视频,相信你很快就会对Unity3D有了一定的了解。

   之后,不妨自己试着做一个小游戏。在自己尝试的过程中,你可能会遇到许多问题。这时不要慌张,要知道,这正是提高的好机会。照着书和视频一步一步做,你可能一路很顺畅,但是记得不牢。这就是我曾经走过的弯路:看过很多视频,照着代码一点一点敲,但是在敲的过程中,没总是有思考代码为什么这么写,印象不深刻,很快就忘了。无疑这样的学习效率是很低的。在自己尝试解决问题时,问题在你脑海中停留的时间更长,你的记忆会更加深刻。当问题解决后,你再次遇到同样的问题时,就会很顺利地解决。而解决问题的方法中,很重要的一点就是使用好搜索引擎(强烈建议使用google)。你所遇到的问题很多人之前已经遇到过了,他们提供了解决方法。你所要做的就是把它们找出来。

资料分享

   最后,分享一下自己平时收集的网站、电子书和视频。

   1. http://unity3d.com/learn/documentation ,官网文档,包含手册和脚本参考;

   2. http://answers.unity3d.com,类似stackoverflow的技术问答网站,你的绝大多数问题都可以在这里找到答案;

   3. http://unitygems.com,一个很赞的网站,里面包含很多干货,绝对的干货,强烈推荐

   4. http://youtube.com,想了想还是贴出来了,里面真的有很多牛人制作的教学视频...连不上?您自己再想想办法吧...

   5. http://unitymanual.com,国内的一个Unity论坛,有很多的教学视频,插件,模型。

       6. 电子书

   

       7. 官网视频教程

       

结束语

  相信您也看出来了,Unity3D入门其实很简单。 但您也要知道的是,要想继续深入 U3D,您需要有足够的毅力,投入更多的精力。

  学习过程中可能会遇到各种各样令人头疼的问题,还是那句话,不必惊慌,这是提高的机会。无论生活还是工作,其实很多事,只要你足够想,就一定会找到解决问题的方法。试想您过往遇到的种种问题,有多少是真正无计可施的?

  学习也许是一件很辛苦的事情,但收获知识绝对是一件很愉快的事,您说是吧

  希望本文对想要入门U3D的您提供一些帮助,祝您学习愉快!

转载于:https://www.cnblogs.com/mezero/p/3831855.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/363281.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

4. HTML表单标签

表单是网页中最常见的元素,也是用户和我们交互的重要手段,在网站中的登录、注册、信息更新这些功能都是依赖表单实现的。在HTML中对于表单提供了一系列的标签,即输入框、下拉框、按钮、文本域,如下是一个最常见的表单结构内容&…

为Lucene选择快速唯一标识符(UUID)

大多数使用Apache Lucene的搜索应用程序都会为每个索引文档分配唯一的ID(即主键)。 尽管Lucene本身不需要这样做(它可能不太在乎!),但应用程序通常需要它以后通过其外部ID替换,删除或检索该文档…

ubuntu16.04设置静态ip

最近在课堂上,有很多同学反映在搭建环境的时候,虚拟机ip经常变,那么我们配置好的web服务可能就不能用了。下面讲一下如何在ubuntu上面设置静态ip 1:首先我们确认一下ubuntu的版本 cat /etc/issue 或者sudo lsb_release -a或者unam…

Maven常用的构建命令

Maven常用命令: Maven库: http://repo2.maven.org/maven2/ Maven依赖查询: http://mvnrepository.com/ 一,Maven常用命令: 1. 创建Maven的普通Java项目: mvn archetype:create-DgroupIdpackageName-Dartifa…

课时85.层叠性(掌握)

1.什么是层叠性? 层叠性就是CSS处理冲突的一种能力。 这个字体最终会变为红色 注意点: 层叠性只有在多个选择器选中“同一个标签”,然后又设置了“相同的属性”,才会发生层叠性。 CSS全称:Cascading StyleSheet 层叠样式表&am…

SetProcessWorkingSetSize减少内存占用

系统启动起来以后,内存占用越来越大,使用析构函数、GC.Collect什么的也不见效果,后来查了好久,找到了个办法,就是使用 SetProcessWorkingSetSize函数。这个函数是Windows API 函数。下面是使用的方法:[Syst…

Spring Boot 与消息 (JMS、AMQP、RabbitMQ)

RabbitMQ教程 - 鸟哥的专栏 - CSDN博客 一、概述 大多应用中,可通过消息服务中间件来提升系统异步通信、扩展解耦能力消息服务中两个重要概念:消息代理(message broker)和目的地(destination) 当消息发送者发送消息以后&#xff0…

JavaOne 2014 –有关提交的一些初步分析

这些天时间不多了。 并行发生的事情如此之多,当然,最重要的Java会议就是一切。 JavaOne 2014已经关闭了CfP门,投票正在进行中。 程序委员会几乎没有什么可以谈论的,但是去年跳过了这种分析之后,现在是我该寻求许可的时…

【译】XNA Shader 程序设计(二)

XNA Shader 程序设计 教程2 - 漫反射 大家好,今天我们将在教程一的基础上继续学习,在光照算式中加上漫反射光。 漫反射光 环境光计算等式为: I Aintensity * Acolor 漫反射基于这个等式,添加了一道有方向的光线: I A…

A股滚动净利润增速最高排名

最近2年(共8个季度)的滚动净利润都在增长,且平均增速超过10%。 计算举例:滚动净利润增速 ((2018Q1 到 2018Q4的净利润之和) / (2017Q4 到 2018Q3的净利润之和) -1) * 100%。 预测下季度:依据以往的增速,进…

Java 8 Friday:让我们弃用那些旧版库

在Data Geekery ,我们喜欢Java。 而且,由于我们真的很喜欢jOOQ的流畅的API和查询DSL ,我们对Java 8将为我们的生态系统带来什么感到非常兴奋。 Java 8星期五 每个星期五,我们都会向您展示一些不错的教程风格的Java 8新功能&#…

Educational Codeforces Round 10

652A - Gabriel and Caterpillar 20171128 按题意模拟即可 #include<stdlib.h> #include<stdio.h> #include<math.h> #include<cstring> #include<iostream> #include<algorithm> using namespace std; int h1,h2,a,b,ans1; int main()…

内存不足:杀死进程或牺牲孩子

现在是早上6点。 我清醒地总结了导致我太早醒来的电话的事件序列。 这些故事开始时&#xff0c;我的电话警报响了。 困倦而脾气暴躁的我检查了电话&#xff0c;看我是否真的疯了以至于无法在凌晨5点设置唤醒警报。 不&#xff0c;这是我们的监视系统&#xff0c;表明Plumbr服务…

将Array、Dictionary等集合类的序列化和反序列化

Objective-C的集合类序列化到文件中或者从文件中反序列化其实很简单&#xff0c;请看下面的示例代码&#xff1a; NSArray *array [NSArray arrayWithObjects:"Hefeweizen", "IPA", "Pilsner", "Stout", nil];NSDictionary *dictiona…

职场交流:一位软件工程师的7年总结

2009年05月13日15:06  来源&#xff1a;1、分享第一条经验&#xff1a;“学历代表过去、能力代表现在、学习力代表未来。”其实这是一个来自国外教育领域的一个研究结果。相信工作过几年、十几年的朋友 对这个道理有些体会吧。但我相信这一点也很重要&#xff1a;“重要的道理…

JavaFX 8u20天的未来过去(始终在最前面)

自从我发布有关JavaFX的主题以来已经有很长时间了。 因此&#xff0c;如果您仍在追随&#xff0c;那就太棒了&#xff01; 介绍 在这篇博客文章中&#xff0c;我想写一篇关于从JavaFX 8 update 20开始的非常酷的功能的博客&#xff0c;该功能使您的应用程序始终位于其他应用程…

cocos creator实战-(三)简单例子摇杆控制角色移动

&#xff08;待完善&#xff0c;给玩家加上摄像机跟随效果&#xff09; 1、stick监听cc.Node.EventType.TOUCH_MOVE事件&#xff0c;获取tick移动的坐标和朝向&#xff0c;限制移动的范围 2、根据stick的朝向&#xff0c;每帧更新player的位置和方向 // 摇杆代码 joy_stick.jsc…

php构造数组,并把多数组插入php文件

晚上做的一点东西&#xff0c;发出来大家共享下&#xff01; Code<?php //php 链接数据库mysql_connect("localhost", "root", "hicc") or die("Could not connect: " . mysql_error());mysql_select_db("babyker");$re…

针对新手的Java EE7和Maven项目–第6部分

从前面的部分恢复 第1 部分 &#xff0c; 第2 部分 &#xff0c; 第3 部分 &#xff0c; 第4 部分 &#xff0c; 第5部分 在上一篇文章&#xff08;第5部分&#xff09;中&#xff0c;我们发现了如何使用Arquillian&#xff08;我们的EJB服务&#xff09;进行单元测试&#xf…

Starter pom

以下图片是引用书籍内容&#xff1a; 比如你在用boot写一个web项目&#xff0c;在maven中你会导入&#xff1a; <!-- 导入spring boot的web支持 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-we…