前言 首先需要了解的是,Unity3D的C#基础脚本模块是通过Mono来实现的. 什么是Mono? 参考下百度百科:Mono是一个由Novell公司(由Xamarin发起)主持的项目,并由Miguel de lcaza领导的,一个致力于开创.NET在Linux上使用的开源工程.它包含了一个C#语言的编译器,一个CLR的Runtime,和一组类库,并实现了 ADO NET和ASP NET. 它基于CIL和C#的ECMA标准,提供了了微软.Net FrameWork的另一种实现. Mono主要有以下…
前言介绍 附录:Spring源码学习专栏 在上一章的学习中,我们对Bean的创建有了一个粗略的了解,接着本文挑一个比较重要的知识点Bean的懒加载进行学习 1.什么是懒加载? 懒加载(Lazy-initialized beans):懒加载模式是bean在第一次调用时候被实例,而不是spring容器启动时候,默认是不开启的,( A lazy-initialized bean tells the IoC container to create a bean instance when it is f…
在 Vue3 测试版刚刚发布的时候,我就学习了下 Composition API,但没想到正式版时隔一年多才出来,看了一下发现还是增加了不少新特性的,在这里我就将它们一一梳理一遍. 本文章只详细阐述 Vue3 中重要或常用的新特性,如果想了解全部的特性请转:Vue3 响应性基础 API Composition API 这是一个非常重要的改变,我认为 Composition API 最大的用处就是将响应式数据和相关的业务逻辑结合到一起,便于维护(这样做的优点在处理庞大组件的时候显得尤为重要). 之…
前言 学习Shader的过程中发现模型锯齿严重,于是去Edit--Project Settings--Quality选项下将反锯齿设置为了8X Multi Sampling.结果没有任何改变,如图: 解决办法 将摄像机的渲染路径(Rendering Path)设置为前向渲染(ForwardBase)就行,因为Unity默认的延迟渲染(Deffered Rendering)不支持多重采样抗锯齿(MSAA),如图: 可以看到模型边缘变平滑了许多. 为什么多重采样抗锯齿不能在延迟渲染模式下工作? 延迟…
选择file -->new project 然后保存到相应的地方 下面是这个刚创建的工程效果图. 然后创建一个C# Script ||定位到最左下角找到  assets --> create --> C# Script  然后起一个名字. 创建好了如图所示 然后选中左边的 Main Camera 把刚创建的Script 与Main Camera 关联 把刚创建的Script Add 进来.然后选中刚创建的Script open it 打开. 打开后如图所示 添加如下代码 using Un…
一 网络下载可以使用WWW类下载资源用法:以下载图片为例WWW date = new WWW("<url>");yield return date;texture = date.texture; 注意函数的返回值类型为IEnumerator,下载函数尽量使用StartCoroutine(function())协同程序.对于本地资源,url为"file://"+路径,如果使用当前目录,可以使用Application.dataPath用这个方法同样可以在线更…
在C#脚本中,必须显式的继承MonoBehaviour类需要注意的是,在创建C#脚本时,脚本名应尽量符合C#命名规则,以字母或下划线开头,因为类名的默认跟随脚本名.C#声明变量的方式和C++和Java类似,例如public string[] name = {"element1","element2",...};public int i; public GameObject obj;总体来说,与JavaScript的区别在于类型关键词的放置位置不同.函数的定义方式:&…
Update()每帧调用一次LateUpdate()在Update()后执行Awake()系统执行的第一个方法Start()在Awake()之后,Update()之前FixedUpdate()固定更新,可在Edit->Project Settings->Time中更改刷新频率OnDestroy()脚本销毁时调用OnGUI()每帧调用,专门用来绘制界面创建对象 var obj = GameObject.CreatePrimitive(PrimitiveType.cube);获取对象 GameOb…
目录 1. 概述 2. 详论 2.1. 创建材质 2.2. 着色器 2.2.1. 名称 2.2.2. 属性 2.2.3. SubShader 2.2.3.1. 标签(Tags) 2.2.3.2. 渲染状态(RenderSetup) 2.2.3.3. 通道(Pass) 2.2.4. 回退(FallBack) 2.3. 渲染管线 1. 概述 在上一篇文章<Unity3D学习笔记2--绘制一个带纹理的面>中介绍了如何绘制一个带纹理材质的面,并且通过调整光照,使得材质生效(变亮).不过,上篇文章隐藏了…
不是什么技术文章,纯粹是我个人学习是遇到一些觉得需要注意的要点,当成笔记. 1.关于调试,在Android下无法断点,Debug也无法查看,查看日志方法可以启动adb的log功能,或者自己写个GUI控件直接在屏幕上显示Info 2.所有自定义的编辑器扩展插件脚本必须放在Editor文件夹里,不然会导致编译程序时出错,放到Editor文件下,编译成游戏时才会忽略这些脚本 3.打包资源时,假设是在移动设备上使用,打包方式务必选择成:BuildTarget.AndroidBuildPipeline.B…
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/42060963 作者:毛星云(浅墨)    微博:http://weibo.com/u/1723155442 邮箱: happylifemxy@163.com 文章开头,先给自己诚求个游戏研发实习的好去处. 浅墨今年1月.明年上半年有近半年的空暇时间可供实习. 近5年游戏编程经验,能够胜任全职的游戏开发工作.仅仅拿实习生的工资(性价比非…
目录 1. 概述 2. 详论 3. 其他 4. 参考 1. 概述 在文章Unity3D学习笔记2--绘制一个带纹理的面中使用代码的方式创建了一个Mesh,不过这套接口在Unity中被称为简单接口.与其相对应的,Unity还提供了一套高级API来创建Mesh. 2. 详论 根据Unity文档的论述,使用高级接口能够得到更高的性能,能够跳过一些验证检查.但是这并不是最关键的,简单接口有个最大的缺点是顶点个数超过65535个时就有问题(至少在2019.4.3f1版本还是这样). 话不多说,直接上代码:…
目录 1. 概述 2. 详论 2.1. 自动实例化 2.2. MaterialPropertyBlock 3. 参考 1. 概述 在前两篇文章<Unity3D学习笔记6--GPU实例化(1)><Unity3D学习笔记6--GPU实例化(2)>分别介绍了通过简单的顶点着色器+片元着色器,以及通过表面着色器实现GPU实例化的过程.而在Unity的官方文档Creating shaders that support GPU instancing里,也提供了一个GPU实例化的案例,这里就详细…
机器学习&数据挖掘笔记_16(常见面试之机器学习算法思想简单梳理) 作者:tornadomeet 出处:http://www.cnblogs.com/tornadomeet 前言: 找工作时(IT行业),除了常见的软件开发以外,机器学习岗位也可以当作是一个选择,不少计算机方向的研究生都会接触这个,如果你的研究方向是 机器学习/数据挖掘之类,且又对其非常感兴趣的话,可以考虑考虑该岗位,毕竟在机器智能没达到人类水平之前,机器学习可以作为一种重要手段,而随着科技的 不断发展,相信这方面的人才需求也会越…
机器学习&数据挖掘笔记_16(常见面试之机器学习算法思想简单梳理) 转自http://www.cnblogs.com/tornadomeet/p/3395593.html 前言: 找工作时(IT行业),除了常见的软件开发以外,机器学习岗位也可以当作是一个选择,不少计算机方向的研究生都会接触这个,如果你的研究方向是机器学习/数据挖掘之类,且又对其非常感兴趣的话,可以考虑考虑该岗位,毕竟在机器智能没达到人类水平之前,机器学习可以作为一种重要手段,而随着科技的不断发展,相信这方面的人才需求也会越来越大…
  之前用3dsmax将模型转成FBX怎么也没有办法自动导入材质到Unity3d中(试过勾选了导出嵌入媒体,没用).索性试了试c4d,发现是可行的,看来像我这种菜鸡还是更加适合用c4d.   拿zoe模型为例,该模型有两个材质球,分别叫材质和材质1:   将其正常导出:   拖到unity3d的Asserts文件夹下,可以看到现在的模型是没有材质的:   再将应用于材质球上的两个材质文件拖到Asserts文件夹下(和模型是否同一文件夹都无所谓),点击模型,在inspector--Model中点击…
目录 1. 概述 2. 详论 2.1. 网格(Mesh) 2.1.1. 顶点 2.1.2. 顶点索引 2.2. 材质(Material) 2.2.1. 创建材质 2.2.2. 使用材质 2.3. 光照 3. 代码 1. 概述 上一篇文章<Unity3D学习笔记1--绘制一个三角形>中介绍了Unity3D的HelloWorld--绘制一个简单的三角形.不过这个三角形太简单了,连材质都没有.那么这里就将三角形扩展为一个矩形的面,并且为这个面贴上纹理. 2. 详论 2.1. 网格(Mesh) 前面说…
目录 1. 概述 2. 详论 3. 参考 1. 概述 在之前的文章中说到,一种材质对应一次绘制调用的指令.即使是这种情况,两个三维物体使用同一种材质,但它们使用的材质参数不一样,那么最终仍然会造成两次绘制指令.原因在于,图形工作都是一种状态机,状态发生了变化,就必须进行一次绘制调用指令. GPU实例化用于解决这样的问题:对于像草地.树木这样的物体,它们往往是数据量很大,但同时又只存在微小的差别如位置.姿态.颜色等.如果像常规物体那样进行渲染,所使用的绘制指令必然很多,资源占用必然很大.一个合理的…
目录 1. 概述 2. 详论 2.1. 实现 2.2. 解析 3. 参考 1. 概述 在上一篇文章<Unity3D学习笔记6--GPU实例化(1)>详细介绍了Unity3d中GPU实例化的实现,并且给出了详细代码.不过其着色器实现是简单的顶点+片元着色器实现的.Unity提供的很多着色器是表面着色器,通过表面着色器,也是可以实现GPU实例化的. 2. 详论 2.1. 实现 首先,我们还是挂接与上篇文章一样的脚本: using UnityEngine; [ExecuteInEditMode] p…
目录 1. 概述 2. 详论 3. 问题 1. 概述 在文章<Unity3D学习笔记11--后处理>中论述了后处理是帧缓存(Framebuffer)技术实现之一:而另外一个帧缓存技术实现就是渲染纹理了.通常来说,我们渲染的场景会直接显示到屏幕的颜色缓冲区,但其实纹理和屏幕一样都是二维的,通过把场景渲染到纹理,可以实现很多特别的三维应用场景.三维渲染引擎中,通常给相机封装一个渲染目标(Render Target)的接口,如果不设置,就渲染到屏幕:如果将其设置成一个纹理对象,就渲染到纹理. 2.…
1,如果我们的Unity 5.X 是从这个地址下载的,安装后不会有资源包,则需要从Unity3D官网下载资源包: Standard Assets (Unity 5.x) 下载 下载后安装后,Unity 编辑器的安装目录下看到这些资源包,如图: 2,项目中 Import Package → Environment 中可以找到草地.石头等纹理效果添加到场景中: 3,给Terrain(地形)添加草地纹理(Texture),按住Shift+鼠标左键 删除纹理: 4, 添加第一人称视角,项目中导入角色资源…
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下ant安装与使用 1. 前言2. ant安装3. 简单的ant实例 一.前言 本篇博文记录了Linux下ant安装与使用 本文内容基于以下文章: http://www.linuxidc.com/Linux/2013-08/88955.htm  (Ubuntu中ANT的安装和配置)http://www.blogjava.net/amigoxie/archiv…
感觉可以写3D游戏,还是用C#,很好玩的样子.整理最近学习资料 介绍:游戏引擎,可以用C#配置的游戏引擎.嗯,就这样.其余度娘. 安装:官网,因为现在个人版是免费的.直接官网下.干净利落. 调试插件:Visual Studio 2015 Tools for Unity .功能:就是调试的时候可以附加到unity编辑器进程.方便.记得安装的时候关闭unity和VS.详细教程 Unity界面介绍:详细教程 Unity坐标系介绍:详细教程 Unity学习网站:Unity圣典,Unity学习网. Uni…
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 Linux下搭建JavaWeb环境 1. 前言2. Java安装3. tomcat安装4. tomcat简单命令 一.前言 本篇博文记录了Linux下JavaWeb环境的搭建,本文内容基于以下文章: http://m.blog.csdn.net/article/details?id=7727927(ubuntu下搭建java web开发环境的详细步骤)http://bl…
mac 下编译其他平台的执行文件方式请参看这篇文章,http://www.cnblogs.com/ghj1976/archive/2013/04/19/3030703.html  本篇文章是win下的跨平台编译. 安装GCC编译器(MinGW) 我们需要GCC编译环境,这里我选择的是:MinGW. mac 下安装了Xcode自动就带了GCC,win下没有,所以我们用MinGW这个最小化安装的GCC. MinGW官网提供了一种自动在线下载安装的gui小程序,http://sourceforge.n…
前言: 人脸检測与识别一直是计算机视觉领域一大热门研究方向,并且也从安全监控等工业级的应用扩展到了手机移动端的app,总之随着人脸识别技术获得突破,其应用前景和市场价值都是不可估量的,眼下在学习openCV,自然不能放过这个领域,于是略微了解了下openCV下人脸检測的一些原理,为之后的人脸识别等研究做个小小的铺垫. 原理: 人脸检測属于目标检測(object detection) 的一部分,主要涉及两个方面 先对要检測的目标对象进行概率统计,从而知道待检測对象的一些特征,建立起目标检測模型.…
首先确定学习那一个版本,以之前对Python的接触,Python2.x 的版本仍然占据很大的市场.但作为初学者我还是决定学习新的版本,相信未来会逐渐转向3.x版本的. 其实搭建Python不是一件很难的事情,但搭建过程还是会有些细节问题,写下来备忘. 1.下载安装Python,可以去官网下载最新版 https://www.python.org/downloads/mac-osx/,我下载的时3.4.3.安装是傻瓜式的,就不多说了. 2. 安装完成了,但是你会发现但你检查Python版本是还是Ma…
A-最近一直有接触到正则表达式,现对其做简单梳理: private const RegexOptions OPTIONS = RegexOptions.IgnoreCase | RegexOptions.Compiled;public const string EMAIL = @"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"; public const string URL = @"^(http|https|ftp|rtsp|mms):(\/\…
一.RocketMQ 基础知识介绍Apache RocketMQ是阿里开源的一款高性能.高吞吐量.队列模型的消息中间件的分布式消息中间件. 上图是一个典型的消息中间件收发消息的模型,RocketMQ也是这样的设计,简单说来消息队列的应用场景1)异步处理将不是必须的业务逻辑,进行异步处理,比如注册之后短信.邮箱的发送 2)应用解耦订单系统:用户下单后,订单系统完成持久化处理,将消息写入消息队列,返回用户订单下单成功.库存系统:订阅下单的消息,采用拉/推的方式,获取下单信息,库存系统根据下单信息,进…
入行以来也接触过一些B端产品,这些产品之中权限管理是重中之重,权限管理不仅仅是整个系统的一个小小的模块,它一直贯穿整个系统,从登陆到操作到最后的登出.说它相当的复杂真不为过. 对于权限,如果从控制力来分的话,可以分为功能级权限和数据级权限.从控制方向来分的话又可以分为从系统获取数据和向系统提交数据.一般来说,权限管理无非是围绕着用户,角色和资源三个方面来进行权限管理操作. 首先,设计的时候要面向开发人员友好,让他们能够很好的理解需求和流程.不至于因为权限的问题影响开发.实际上,一般权限设计都会让…