【Unity】Domina-Game总结与反思】的更多相关文章

[Unity]Domina-Game总结与反思 2018/6/15 我总算是把物理课作业--Domina-Game给赶完了,这也算是我用Unity做的第一个游戏吧(不得不说我的脚本写的超烂的)...纪念意义挺大的,这次作业也算是一波三折了,游戏改了三个版本,最后总算将游戏定性为密室逃脱类型的游戏,把我脑内的设想从多人竞技类型的游戏改成密室逃脱类游戏也是够了(笑). 感慨到此为止,下面给出我在这次制作过程的总结还有自我反思,然后明确一下下一步要接着往哪走~~~~ 该游戏GitHub仓库:https…
Unity Shader 阶段性反思与总结(一) 最近在写Shader的时候,总是感觉力不从心,感觉自己已经看了蛮久的书了,也有一定的积累了,但是一想写什么效果,完完全全就是脑袋一团空白.典型的例子就是,我想写边缘光效果的时候,完完全全就是不知道怎么下手这样子. 然后,感觉自己在看书,也没什么提升,每天好像就从书上抄代码一样.....让我很有挫败感. 现在记录一下我在学Shader的时候,读<unity shader 入门精要>这本书的时候感觉困惑.不能理解的几个点.希望有一天我能回来进行回答…
写在前面 感谢全部点进来看的朋友.没错.我眼下打算写一本关于Unity Shader的书. 出书的目的有以下几个: 总结我接触Unity Shader以来的历程,给其它人一个借鉴.我非常明确学Shader的艰难,在群里也见了非常多人提出的问题. 我认为学习Shader还是一件有规律可循的事情,但问题是中文资料难觅,而大家又不愿意去看英文...这对我有什么优点呢?强迫我对知识进行梳理,对细节问题把握更清楚. 第二个原因你懂的. 关于本书的定位问题: 面向Unity Shader刚開始学习的人,但要…
写在前面 感谢所有点进来看的朋友.没错,我目前打算写一本关于Unity Shader的书. 出书的目的有下面几个: 总结我接触Unity Shader以来的历程,给其他人一个借鉴.我非常明白学Shader的艰难,在群里也见了很多人提出的问题.我觉得学习Shader还是一件有规律可循的事情,但问题是中文资料难觅,而大家又不愿意去看英文...这对我有什么好处呢?强迫我对知识进行梳理,对细节问题把握更清楚. 第二个原因你懂的. 关于本书的定位问题: 面向Unity Shader初学者,但要: 有一定的…
一直以来想自己做一套开发框架,在其基础上进行快速开发,自从接触微软的MVC框架和Entityframework以来,阅读了大量园子里的相关的技术文章,也进行了不少摸索和尝试,中间经历了多次大刀阔斧的重构,现在总算有了雏形,把权限.模式和界面初步搞定,但是回头一看,依然有很多东西思路不够清晰,很多时候是在生搬硬套,不求甚解,结果搞出来一些四不像的东西. 入行近十年,项目经验和开发经验应当是很丰富的,但是架构方面,确实是个新手,现在总算对相关技术有了一定的了解,因此打算从头再来一遍梳理,彻底的重构.…
  Reflections 反射 Reflection Source 反射源 By default, objects in a scene are rendered using Unity’s ‘Standard Shader’. The Standard Shader is a 'physically based shader' (PBS). This attempts to accurately represent the behavior of light on materials by…
上周由于工作内容较多,花在unity上学习的时间不多,但总归还是学习了一些东西,内容如下: .1 根据相关的教程在mac上安装了unity. .2 学习了unity的主要的工具分布和对应工具的相关的功能. .3 根据书中的提示 做了一个 简易的机器人游戏(只实现了行走) 关于如何在mac(windows)下安装unity3d工具: http://jingyan.baidu.com/article/1e5468f9055a6b484961b737.html 关于unity工具界面分布及功能: 场景…
0x00 前言 目前所在的团队实行敏捷开发已经有了一段时间了.敏捷开发中重要的一个话题便是如何对项目进行恰当的版本管理.项目从最初使用svn到之后的Git One Track策略再到现在的GitFlow策略,中间有经验也有教训,所以记录在本文,既是和各位朋友交流也供自己日后查阅. 0x01 基础:Unity项目如何做版本管理? 为什么更喜欢git? 初来项目组到时候,项目还在使用SVN作为版本管理的工具.作为一个不喜欢SVN的人,自然而然想到了换用git来做版本管理.这里当然并不是说svn不如g…
最近研究了一下游戏内apk包更新的方法. ios对于应用的管理比较严格,除非热更新脚本,不太可能做到端内大版本包的更新.然而安卓端则没有此限制.因此可以做到不跳到网页或应用商店,就覆盖更新apk包. Unity最常用的脚本语言就是C#,不做断点续传的情况下,采用C#的网络库,还是比较简单的.重点就是做好相应的异常处理. C#用于网络访问的方法主要有两种:WebRequest和封装好的WebClient.为了将来能做更多的扩展,我采用更灵活的HttpWebRequest进行请求.为了不阻塞主线程,…
Script Serialization http://docs.unity3d.com/Manual/script-Serialization.html 自定义序列化及例子: http://docs.unity3d.com/ScriptReference/ISerializationCallbackReceiver.OnBeforeSerialize.html 以下是上面2篇的摘要: 脚本的字段需要满足什么条件才能被序列化?(必须同时满足) 1. public 类型,或者有 [Serializ…
查找了 Script Serialization http://docs.unity3d.com/Manual/script-Serialization.html 自定义序列化及例子: http://docs.unity3d.com/ScriptReference/ISerializationCallbackReceiver.OnBeforeSerialize.html 和Unity 圣典 在这博友 的基础上 再总结下Unity 的序列化 序列化的作用是: 可以显示变量(类,结构等)在inspe…
系列目录 上一篇演示了WebApi利用Unity注入 很多人问我如何用配置文件来配置注入,本节演示如何利用配置文件来注入,道理是一样的,跳转到上一节下载源码一起来动手! 1.打开源码定位到文件DependencyRegisterType.cs 红框部分是必须的,接口和实现的命名空间,程序集,类,所以我们的配置文件也需要拥有以上属性 2.在Apps.Web新建一个XML文件 并添加以下代码: <?xml version="1.0" encoding="utf-8"…
系列目录 前言: 有时候我们系统需要开放数据给手机App端或其他移动设备,不得不说Asp.net WebApi是目前首选 本节记录Asp.net MVC WebApi怎么利用Unity注入.系列开头已经讲解了普通的Asp.net MVC如何用Unity注入容器 不明白什么是IOC,DI,控制反转的自行百度补脑,否则无法阅读本文 其实这也是一次技术上的记录,因为找遍大百度居然没有可以用的利用Unity注入的WebApi!感谢随风朋友的提醒.才能完成本节的指导 为了更好的理解,请下载代码 示例代码下…
1.IoC/DI简介 IoC 即 Inversion of Control,DI 即 Dependency Injection,前一个中文含义为控制反转,后一个译为依赖注入,可以理解成一种编程模式,详细的说明可参见大牛Martin Fowler的强文 http://martinfowler.com/articles/injection.html,借用Hollywood的名言:Don't call us, we'll call you,意即你呆着别动,到时我会找你.控制反转的核心是控制权的转移,从…
本文为<effective c#>的读书笔记,此书类似于大名鼎鼎的<effective c++>,是入门后提高水平的进阶读物,此书提出了50个改进c#代码的原则,但是由于主要针对.net framework,而unity中的mono平台只支持.net framework 2.0,所以有很多原则在unity中并不适用,本文总结了其中在unity中也适用的一些原则.整理后,一共20多个原则仍然适用于unity,将分为两篇文章来记录. 1 使用属性,不使用可访问的数据成员 属性更加灵活,…
本文为孤月蓝风编写,转载请注明出处:http://fengyu.name/?cat=game&id=296 DiaQ是plyGame旗下的一款对话及任务系统.拥有可视化的对话及任务编辑器,能够很方便的处理对话及任务.但是官方文档却不给力,经过一般研究,终于会使用简单的对话系统了,分享给大家. 首先,你需要安装DiaQ插件,DiaQ有单独的,同时也被包含于plyGame中,至于哪里有的“卖”,请使用伟大的搜索引擎. 在安装DiaQ插件后,菜单栏的Windows中会出现DiaQ的菜单,Tools中会…
这篇文章从AssetBundle的打包,使用,管理以及内存占用各个方面进行了比较全面的分析,对AssetBundle使用过程中的一些坑进行填补指引以及喷!   AssetBundle是Unity推荐的资源管理方式,官方列举了诸如热更新,压缩,灵活等等优点,但AssetBundle的坑是非常深的,很多隐藏细节让你使用起来需要十分谨慎,一不小心就会掉入深坑,打包没规划好,20MB的资源“压缩”到了30MB,或者大量的包导致打包以及加载时的各种低效,或者莫名其妙地丢失关联,或者内存爆掉,以及各种加载失…
Unity里面整合了一个NavMesh功能,虽然让人又爱又恨. 但当你在其他地方需要这个NavMesh的数据时,就更让人欲罢不能了. 比如说服务器需要Unity的NavMesh数据时. 比如说你想将Unity的场景导出到其他引擎时,比如时下流行的H5.   最近我就碰到了这样一个需求,走了一些弯路,研究了Unity的NavMesh 将Unity的NavMesh数据导出 先说代码,我编写了一个导出脚本,将navmesh数据可以导出成一个obj,也可以导出成一个json文件 你可以用svn 获取代码…
系列目录 前言 为了符合后面更新后的重构系统,文章于2016-11-1日重写 本节重构一下代码,采用IOC控制反转,也就是依赖注入 您可以访问http://unity.codeplex.com/releases得到最新版本的Unity现在. 这里http://unity.codeplex.com/documentation我们找到了帮助文档大家可以下载下来看看 当然,如果您在您的visual studio 中安装了Nuget 包管理器,你可以直接在Nuget中获取到最新版本的Unity. 我们采…
Unity iOS混合开发界面切换思路 最近有很多博友QQ 私信 或则 留言联系我,请教iOS和Unity界面之前相互切换的问题,源代码就不私下发你们了,界面跳转功能的代码我直接贴到下面好了,顺带说iOS和Unity界面切换的思路... 思路 之前一篇文章里面只谈到了Unity和iOS工程的融合,并没有谈到iOS和Unity界面的切换,这里谈谈思路,Unity导出的iOS工程里面的结构大致是这样的,有一个Window,Window上有一个UnityView,但是并没有控制器,也没有根控制器,虽然…
控制反转原则 依赖注入 Install-Package Unity:https://www.nuget.org/packages/Unity/ Github:https://github.com/unitycontainer/unity Dependency Injection with Unity:https://msdn.microsoft.com/zh-cn/library/ff660899(v=pandp.20).aspx Configuring Unity:https://msdn.m…
Unity插件分为两种:托管插件(Managed Plugins)和本地插件(Native Plugins).本文先来说说Unity中的托管插件,本地插件的文章留到下一篇文章再说. 有时候我们会有这样的需求:给第三方公司提供Unity插件,而又不希望第三方看到具体代码,这时就可以将核心代码编译成dll文件供第三方调用.或者说,同一个公司多个项目都用到某个模块,则可以把该模块封装成dll,方便在不同项目之间共用和维护. 关于dll加密的问题,以后有机会了可以考虑写点东西分享出来. 一.创建DLL…
自从来到现在的公司,负责Unity组开发以来,尝试了各种版本控制工具.从一开始的TortoiseSVN,到后来为了追求逼格使用Git,尝试了Github客户端和SourceTree,发现都有各种不爽.最后,发现还是Unity的亲儿子Asset Asset Server最好使,服务器配置傻瓜化,还集成到了Unity编辑器. 一.Asset Server安装 去Unity官网下载Unity资源服务器,如下图: Windows版下载后安装很简单,安装过程中会弹出的账号密码对话框,如下图: 填写完账号密…
现在新版的Unity(印象中是从5.3开始)已经提供了原生的Json库,以前一直使用LitJson,研究了一下Unity用的JsonUtility工具类的使用,发现使用还挺方便的,所以打算把项目中的Json库换成Unity原生的.在Unity3D开发中Json有什么用呢?下面就来说说Json在Unity中的使用. 一.Json有什么用? Json在Unity中还是挺常用的一种数据格式的.那么,在Unity开发中哪些地方会用到Json呢?我相信没有太多编程经验的人肯定对这个问题比较感兴趣.在Uni…
很早以前看过这个东西,但是没有真正的用到过,希望之后会用到上面的方法, 大概的意思是这样的c#中尤其在用Unity的时候,已有的框架提供给我们一些固定的方法,但是有时我们想对这些方法进行修改, 这时我们就用到了拓展方法,也可以称为c#中的语法糖. 不过需要注意几点: 类必须是static的,即静态类,但是不能继承MonoBehaviour类. 静态类中的方法同样需要是static的. 传入的参数需要有this修饰符修饰,如 public static void SetPositionX(this…
本文是Unity官方教程,性能优化系列的第三篇<Optimizing garbage collection in Unity games>的翻译. 相关文章: Unity性能优化(1)-官方教程The Profiler window翻译 Unity性能优化(2)-官方教程Diagnosing performance problems using the Profiler window翻译 Unity性能优化(3)-官方教程Optimizing garbage collection in Uni…
本文是Unity官方教程,性能优化系列的第四篇<Optimizing graphics rendering in Unity games>的翻译. 相关文章: Unity性能优化(1)-官方教程The Profiler window翻译 Unity性能优化(2)-官方教程Diagnosing performance problems using the Profiler window翻译 Unity性能优化(3)-官方教程Optimizing garbage collection in Uni…
Attribute是c#的语言特性 msdn说明如下: The Attribute class associates predefined system information or user-defined custom information with a target element. A target element can be an assembly, class, constructor, delegate, enum, event field,interface, method,…
本文是Unity官方教程,性能优化系列的第二篇<Diagnosing performance problems using the Profiler window>的简单翻译. 相关文章: Unity性能优化(1)-官方教程The Profiler window翻译 Unity性能优化(2)-官方教程Diagnosing performance problems using the Profiler window翻译 Unity性能优化(3)-官方教程Optimizing garbage co…
本文是Unity官方教程,性能优化系列的第一篇<The Profiler window>的简单翻译. 相关文章: Unity性能优化(1)-官方教程The Profiler window翻译 Unity性能优化(2)-官方教程Diagnosing performance problems using the Profiler window翻译 Unity性能优化(3)-官方教程Optimizing garbage collection in Unity games翻译 Unity性能优化(4)…