UNITY - 技术教程文章

unity3d屏幕不休眠

Screen.sleepTimeout = SleepTimeout.NeverSleep;原文:http://www.cnblogs.com/canghuolong/p/3533783.html

【Unity】8.5 扩展编辑器【代码】【图】

分类:Unity、C#、VS2015 创建日期:2016-04-27 一、简介可以通过编辑器窗口 (Editor Windows) 创建自己在 Unity 中的自定义设计工具。来自EditorWindow (而非 MonoBehaviour )的脚本可以影响 GUI/GUILayout 和 EditorGUI/EditorGUILayout 控件。或者,你可以使用自定义检视器 (Custom Inspectors) 显示游戏对象检视器 (GameObject Inspector) 中的 GUI 控件。 二、自定义编辑器窗口你可以在应用程序中创建任意数量的自定义窗口。...

Unity之一天一个技术点(十九)--初学委托

委托这个对于C#初学者比较头疼,我也是看了半天资料才稍微弄懂一点,下面的代码还是挺简单的,也算用了委托这么逼格高的技术了。using UnityEngine; using System.Collections;//三个军衔级别的命令类型// public enum TypeOfCommands {General,Captain,Soldier }public class EventManager : MonoBehaviour {//定义一个通用代理,根据传递类型,发送消息 public delegate void CommonUse(TypeOfCommands cmd);//定义一个事件发...

[原]unity3d之http多线程异步资源下载【代码】【图】

郑重声明:转载请注明出处 U_探索本文诞生于乐元素面试过程,被面试官问到AssetBundle多线程异步下载时,愣了半天,同样也被深深的鄙视一回(做了3年多u3d 这个都没用过),所以发誓要实现出来填补一下自己的空白,同时分享给大家。说明:本人只在pc和Android下测试好使,其他平台未知!直接贴代码,都是C# http的API,不懂得自己百科。using UnityEngine; using System.Collections; using System; using System.Text; using Syst...

Unity3D笔记 模型和角色动画的输出设置【图】

原文:http://www.cnblogs.com/PEPE/p/3579639.html

Digital Tutors - Creating an Action Adventure Puzzle in Unity学习笔记【代码】【图】

遇到的问题:1 第11节Scripting the pressure plates中需要获取子物体的Animator组件,教程使用的语句如下:”SwitchAnim = GetComponentInChildren<Animator>();“经测试,无法获取,产生了 “Animator has not been initialized”的警告解决方法:直接查询子物体,然后在获取子物体的组件“SwitchAnim = gameObject.transform.GetChild(0).GetComponent<Animator>();”原因:不明确,可能操作顺序上有问题,也有可能是版本问题,...

蓝鸥Unity开发基础二——课时24 字典

蓝鸥Unity开发基础二——课时24 字典一,字典Dictionary是存储键和值的集合Dictionary是无序的,键Key是唯一的 推荐视频讲师博客:http://11165165.blog.51cto.com/using System;//引用泛型集合命名空间using System.Collections.Generic;namespace Lesson_24{ class MainClass { public static void Main (string[] args) { //创建一个字典对象,key的类型是string,Value的类型是int ...

unity3d 随机生成地形之随机山脉【图】

利用Fractal Noise生成地形,再加上山体shader,外加雪shaderNoise生成结果noise 生成主要参考这篇文章,就不再赘述Value3D: Perlin2D: Fractal Noise:地形生成结果生成地形网格方法主要参考这篇文章,就不再赘述noise 频率:22,分辨率:256 Value3D:Perlin2D:Fractal Noise:noise 有很多用处,比如地形,水体,流体,特殊物体的纹理,或使贴图不重复等等山体shaderShader方面分为两层,上层为岩石,下层为植物,(可根据贴图变化...

Ioc依赖注入:Unity4.0.1 在项目中的应用 (MVC和API)【代码】【图】

使用Unity的好处网上有很多,百度一下即可这里引用了一篇关于面向接口编程的好处的文章作为引申:https://blog.csdn.net/Cyy19970527/article/details/83177996在MVC中使用Unity需要引用Unity包,我安装的版本为 Unity-4.0.1尽管现在Unity最新版本已经更新到5.11.2了,但是在使用配置文件注入的时候,总是报以下错误,百度查找到一篇文章说是版本问题: https://blog.csdn.net/weixin_34124577/article/details/93533679接下来直接上...

Unity cg vertex and fragment shaders(一)【代码】

cg片段Cg程序片段写CGPROGRAM和ENDCG之间开始时的片段可以作为#pragma语句编译指令 Pass {// ... the usual pass state setup ...CGPROGRAM// compilation directives for this snippet, e.g.:#pragma vertex vert#pragma fragment frag// the Cg/HLSL code itselfENDCG// ... the rest of pass setup ...}http://i.cnblogs.com/EditPosts.aspx?opt=1 #pragma vertex name ---------------- 编译以name为名字的函数的顶点着色器...

Unity扩展编辑器二【图】

Unity支持自行创建窗口,也支持自定义窗口布局,在Project视图中创建一个Editor文件夹,在文件夹中创建一条脚本自定义窗口需要让脚本继承EditorWindow在设置MenuItem,此时在Unity导航菜单栏中GameObject-window就可创建一个自定义窗口?EditorWindow.GetWindowRect()和EditorWindow.GetWindow()都可以创建一个窗口,前者可以规定窗口的区域,后者通过鼠标动态的延伸窗口。参数1表示窗口的对象,参数2表示窗口的区域。参数3表示窗口不会被别...

Unity-DLL反编译学习【图】

本文由博主(SunboyL)原创,转载请注明出处:http://www.cnblogs.com/xsln/p/DLL_DeCompilation.html 在Unity实际开发过程中,我们可能会用到大量的插件,而很多插件有可能并非开源,而是封装成dll文件。 使用免费非开源插件时,插件往往缺少维护,这对我们的开发是非常不利的。例如dll暴露的诸多接口,我们并不知道这些接口背后干了什么、底层用到哪些接口、有什么使用上的潜规则、对性能影响如何。 根据网上发现的网友统...

【Unity】2.0 第2章 Unity编辑器和基本操作

分类:Unity、C#、VS2015 创建日期:2016-03-26 本章要点: 1、掌握Unity 5.3.4编辑器视图和菜单项及其含义,这是入门的最基础部分,必须掌握。 2、了解最基本的操作,先学会模仿着向场景中添加一些简单的对象。 本章目录安排如下: 2.1 初识Unity 5.3.4编辑器2.2 Unity5.3.4 编辑器中的常用菜单项2.3 项目浏览器和资源的组织2.4 层次视图(Hierarchy)2.5 预设(Prefabs)2.6 光源(Lights)2.7 相机(Camera)2.8 检视器(In...

Unity配置

1. Unity 配置文件的完整格式<?xml version="1.0" encoding="utf-8" ?> <configuration><configSections><section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection,Microsoft.Practices.Unity.Configuration, Version=1.0.0.0,Culture=neutral, PublicKeyToken=31bf3856ad364e35" /></configSections><unity><typeAliases> <typeAlias alias="singleton" type="Microsoft.Practices.Uni...

Unity编辑器生成可配置编辑文件【代码】

using UnityEditor;public class PoolManagerEditor {[MenuItem("Manager/Creat GameObjectPoolConfig")]static void CreatGameObjectPoolList(){GameObjectPoolList poolList = ScriptableObject.CreateInstance<GameObjectPoolList>();//生成可编辑对象string path =@"Assets/Framework/Resources/gameobjectpool.asset";//保存的路径AssetDatabase.CreateAsset(poolList,path);//第一步AssetDatabase.SaveAssets();//第二步} }G...

把Unity包体构建到steam的后台【图】

一 首先到Steamworks去下载需要的SDK,修改sdk\tools\ContentBuilder\scripts里面的俩个vdf文件名 app_build_1000.vdf文件是你游戏软件的,depot_build_1001.vdf是你游戏软件里面的一个depot,(一个app里面可以有多个depot),app_build_1000.vdf文件名中的1000修改你在steam后台的appid,比如你的appid是819800,你就修改成app_build_819800.vdf。把depot_build_1001.vdf中的1001修改成你steam后台的depot id,如果你的depot id是...

unity 输入框Tab键的使用【代码】

using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using UnityEngine.EventSystems; ///<summary>/// ************************************本脚本挂在输入框上即可********************************************* ///</summary>publicclass Tabcoll : MonoBehaviour,ISelectHandler,IDeselectHandler { publicvoid OnDeselect(BaseEventData eventData) { _instacnet = fa...

unity3d中Transform组件变量详解【代码】【图】

Transform组件是每个游戏对象必须有的一个组建,因为你创建一个空物体,它也有该组建,因为unity3d是面向组建开发的一款游戏引擎。通过一张图片来看看它的属性 你可以在通过代码查看这些属性的区别 Debug.Log("position " + transform.position); //世界坐标的位置Debug.Log("localPosition " + transform.localPosition); //相对于父位置的坐标 即把父物体当作自己的中心Debug.Log("eulerAngles " + transform.eulerAngl...

Unity3d中对应各平台Path

IOS: Application.dataPath : Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/xxx.app/Data Application.streamingAssetsPath : Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/xxx.app/Data/Raw Application.persistentDataPath : Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Documents Application.temporaryCachePath : Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Librar...

关于DebuggerHidden特性在Unity中的使用【代码】

经过测试,DebuggerHidden只对输出的日志有影响。对编辑器的控制台输入没有影响你可以通过这个特性避免日志log有一堆的堆栈信息 并且测试过发现Debug.LogError也不支持该特性,和Debug.Log一样没有堆栈跟踪 只有抛出异常才会有堆栈跟踪 log输出:Exception: !!!at A1.Start () [0x00000] in <filename unknown>:0 Unity测试脚本:publicclass B1 : MonoBehaviour {[System.Diagnostics.DebuggerHidden]publicstaticvoid Trigger(){t...

unity shader 实现模型部分半透明【图】

一、效果图二、原理:shader依据本地坐标,修改透明度。首先需要将mesh合并成一个,否则会单个mesh,各自为战源码下载原文:https://www.cnblogs.com/ltxhg/p/11498594.html

Unity获取鼠标点击位置,物体朝鼠标点击处移动【代码】

大型游戏中经常会有这种场景,点击屏幕位置,人物就会朝着鼠标点击位置移动,下面我们就来实现这种效果。首先,我们在场景中添加一个Plane,并且设置它的tag为Plane,然后,在Plane上面添加一个Cube,设置好位置,刚好放置在Plane上面,最后,给cube添加一个脚本,脚本内容如下:using UnityEngine; using System.Collections;public class RayCastTest : MonoBehaviour {//cube移动速度public float speed = 3f;private Vector3 o...

【转】Effective C#观后感之提高Unity中C#代码质量的21条准则【图】

转自:http://blog.csdn.net/swj524152416/article/details/75418162我们知道,在C++领域,作为进阶阅读材料,必看的书是《Effective C++》。 而《Effective C#》之于C# ,是类似《Effective C++》之于C++一样的存在。这篇文章,将《Effective C# Second Edition》一书中适用于Unity游戏引擎里使用C#的经验之谈进行了提炼,总结成为21条(一开始总结的是22条,后来发现第22条也是.NET的特性,Unity版本的mono并没有实现,所以严格意...

单机环境下在WinForm中使用Unity3d【图】

今天工作需要,要把Unity3d嵌入WinForm中,具体怎么做网上都有教程的。但是,按照教程来,即 在WinForm中添加UnityWebPlayer控件(这个是COM组件),结果无法正确显示。此时界面为: Error details是: Src路径是.unity3d的全路径,路径正确的,如果路径错误的话,提示是: 注意此时我已经安装了UnityWebPlayer插件。(我搜索单机显示unity3d时,只找到说是要安装这个) 我工作的电脑是无法上网的,实际上以前在家里的时候按照教程...

Unity 查找物体对象【图】

unity中查找游戏物体是很寻常的操作,有较多的方法,如下:unity中提供了获取对象的方法: 通过对象名称(Find方法)GameObject.Find通过标签获取单个游戏对象(FindWithTag方法)通过标签获取多个游戏对象(FindGameObjectsWithTags方法)通过类型获取单个游戏对象(FindObjectOfType方法)通过类型获取多个游戏对象(FindObjectsOfType方法)--------------------Find方法:static GameObject Find (string name)传入的name可以是...

安装 Visual Studio Community 2019 + QuantLib【图】

1.安装 Visual Studio Community 2019 2. 安装boost_1_72_0boost_1_72_0-msvc-14.2-32.exe直接双击运行即可3. 下载解压QuantLib-1.17.zip4.构建QuantLib-1.17  a.双击解压后的QuantLib.sln 打开方式为 安装的IDE  b.调整页面 (解决方案资源管理器在 视图-> 解决方案资源管理器)   c. 设置构建QuantLib所需的boost_1_72_0依赖 耐心等待构建结果3.测试 点击 文件 -> 新建项目 原文:https://www.cnblogs.com/ron...

Unity Dll热更新

最简单的案例代码,备后需使用using System.Collections;using System.Collections.Generic;using System.Xml;using UnityEngine;using System.Reflection;using System.IO;using System;/// <summary>/// 加载web代码/// </summary>public class LoadWebScript : MonoBehaviour { static LoadWebScript _instance; public static LoadWebScript Instance { get { if (_instance != null) ...

Unity Inspector 面板的某些特性【图】

特性  特性:就是一种声明性的标签,例如 类、结构体、枚举、字段(变量)等  可以大致的分为以下三个方面:一、修饰字段 [Header(" ")]:面板标题 在 Unity 的 Inspactor 面板上显示一个标题  [Tooltip(" ")]:悬停的注释 当鼠标悬停在 Inspector 面板上的该变量上时,显示有一个 Tip 提示,提示的内容就是参数  [Space( )]:上下字段的空行 仅能修饰字段,使该字段与上一个字段间出现间隔 [Range( , )]:显示滑...

Unity Inspector 给组件自动关联引用(二)【代码】

通过声明的变量名称,主动关联引用. 使用这个关联引用两种方式1. 给你组件继承 MonoAutoQuote 点击组件inspector 按钮执行2. 给你组件类添加[AAutoQuote] 特性 通过Plateface/SetSelectGameRef 执行 [AAutoQuote] publicclass MonoAutoQuote : MonoBehaviour ,IAutoQuote{}public interface IAutoQuote { }public class AAutoQuote : Attribute {}using System.Collections; using System.Collections.Generic; using UnityEn...

【Unity|C#】基础篇(9)——匿名函数/Lambda表达式【代码】

【学习资料】 > 在线文档 官方文档:https://docs.microsoft.com/zh-cn/dotnet/csharp/ 菜鸟教程(高级教程):https://www.runoob.com/csharp/csharp-tutorial.html > 视频教程 腾讯学院、Siki学院 > 书籍     《C#图解教程》(第13章):https://www.cnblogs.com/moonache/p/7687551.html 【学习内容】   > 菜鸟教程:高级教程部分(匿名方法)  > 《C#图解教程》...