自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 资源 (8)
  • 收藏
  • 关注

原创 Lua Messagepack 的用法

定义:MessagePack(以下简称MsgPack)一个基于二进制高效的对象序列化类库,可用于跨语言通信。它可以像JSON那样,在许多种语言之间交换结构对象;但是它比JSON更快速也更轻巧。支持Python、Ruby、Java、C/C++等众多语言。比Google Protocol Buffers还要快4倍。(这里借用别人的说法) 主要是用来序列化和反序列化lua对象用法:这里我写了一个t...

2019-05-06 18:27:00 1995

原创 关于 lua5.1中的 setfenv

– setenv是在lua5.1中有的改变函数作用域的函数。– 用法是setenv(func or number,tbl)– 第一个参数可以是数字也可以是函数,数字1表示当前的作用域,2表示上一层的作用域,特殊情况0,– setfenv changes the environment of the running thread. In this case,setfenv returns no...

2019-03-07 14:25:27 736

原创 Unity中关于场景漫游的两个方法(二)

第二个方法不仅不需要借助漫游插件实现漫游效果,而且还可以实现对物体的抓取,比第一种方法更加方便快捷。废话不多说,下面进入正题: 导入steamVR Plugin插件 steamVR Plugin可以直接从Asset Store中导入。 将预制体SteamVR 和 CameraRig拖入场景中,删除主摄像机。 实现抓取物体 在结构视图中选中两个手柄,并为其添加Rigidbody和Box Co

2017-08-29 17:52:26 10220

原创 Unity中关于场景漫游的两个方法(一)

这里主要用到steamVR的两个插件 SteamVR Plugin 和 Vive-teleporter插件地址:SteamVR Plugin:steamVR PluginVive-teleporter:Vive-teleporter构建场景删除主相机将预设CameraRig 拖入场景此时我们可以运行场景 可以自由挪动头盔(主摄像机)构建寻路网格 Vive-teleporter中自带Nav

2017-08-29 16:17:26 17969

原创 关于在List中遍历删除元素的问题的自省

关于在List中遍历删除元素的问题,在网上搜的大多数的都是 通过倒序的方式,当然也可以通过临时建一个list,然后把存储 但是如果不用倒序的方法 又该怎么写呢?下面是两种通常的写法://倒序的方法private readonly List<TimerTask> m_TimerTaskList = new List<TimerTask>();private readonly List<TimerTask> m_DeleteTimerTaskList = new Li

2020-05-21 20:23:15 335

原创 Unity编辑器开发

这篇文章会一直更新关于编辑器开发相关的内容。算是自己学习过程的一点点的积累吧。

2020-05-16 22:29:40 344

原创 Lua中的select函数

做笔记 做笔记 做笔记 重要事情说三遍Select用法1select(n, …) 表示n为起点, select(n, …)返回从起点n到结束的可变参数例子:-- ...表示可变参数function f(...) a, b, c = select("3", ...) print(a, b, c) print(select("3", ...))endf(0,1,2,3,4,5)...

2019-09-02 11:52:58 417

转载 【cocos2dX】关于卡牌翻转效果的实现

此文章转载地址转载地址依托这个就可以实现卡牌的翻转效果-- 点击卡牌 卡牌进行翻转 掉落物品也随之翻转function winRewardView:openCard(cardStr, cardbkStr, dropInfoStr) -- 卡牌翻转效果 TODO 后面有了特效资源 换成特效 local pnode = self:getResourceNode() local scaleT...

2019-03-12 10:07:02 1204

转载 【转载】关于lua中table的弱引用(__mode)

弱引用Table(__mode)项目中有用到关于table的弱引用,所以就百度了一篇文章 因为没时间写了 所以就直接转载过来吧!弱引用tablelua使用自动内存管理机制,通过垃圾回收器来回收内存垃圾回收器只能回收它认为是垃圾的内容,而不能回收用户认为是垃圾的内容典型的例子栈,栈一般用一个数组和一个表示顶部的索引值表示如果弹出一个元素,那么仅是把栈顶索引减一,但这个元素还留在内存在被...

2019-01-03 17:13:55 981

原创 Unity2D:Sprite和Image的区别

Sprite和Image区别面试的时候被问到Sprite和Image的区别,我当时就感觉这有什么区别呢? 后来查了下资料,还是自己无知啊!下面就具体的区别做个笔记Image 和Sprite 区别下图是一个Sprite在Unity中可以在Hirerarchy层右键-&gt;2D Object里找到Sprite,那么他们的属性面板有什么区别呢?如下图所示:渲染上:Image 通过U...

2018-11-27 13:11:21 30308

转载 【转载】Unity2018.2.9打不开VS2017,Unity打开VS2017异常,并且有时候最后打开的是Mono的解决方案

基于现在很多Unity工程师都是用VS写代码调试,现在分享下。1.下载安装Unity,下载安装VS2017,下载安装Visual Studio Tools For Unity20172.打开Unity,选择Edit→Preferences→Enternal Tools 选择VS20173.若关联好unity发现经常打开很慢,最后总是打开Mono则打开目录 C:\Users\Admini...

2018-10-19 12:14:05 4406 2

原创 Python 笔记 (不定更新)

刚开始学习python, 做下笔记。os.walk()方法os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。os.walk() 方法是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情。实例#!/usr/bin/python# -*- coding: UTF-8 -*-import osfor root, dirs, file...

2018-10-09 17:59:19 179

原创 C#中关于 Stack.peek()和Stack.pop()的区别

C#中关于 Stack.peek()和Stack.pop()的区别之前在教学视频和 项目中都有遇到Stack.peek()这个方法不是很理解 就百度了一下 ,然后做下笔记,防止自己再忘了, Stack.peek()和Stack.pop()的相同点是 获取栈顶的值,不同点 则是 Stack.peek()只是获取栈顶的值,而Stack.pop()是获取栈顶的值然后删除。...

2018-09-22 08:22:19 9442

原创 Unity_____UI等比映射制作小地图

小地图的制作小地图的制作是游戏开发中最最常见的一个小功能。平常教学视频里教的小地图的制作是 在角色的子级下再建一个camera,这种方法可扩展性比较低,而且性能上相当耗(具体怎么耗我目前太菜还不清楚原理,Emmm,以后肯定会知道的)。现在我们要用这个方法则是通过等比例的将场景地形映射到UI上。 具体代码如下:using System.Collections;using System....

2018-09-10 16:46:02 1013

原创 Unity 中 protobuf 库结合 Python 的环境配置

工作中刚开始接触Protobuf这个库,需要配合 python 去配置环境 具体的安装和配置如下:xls表格转protobuf数据安装配置安装python(这里装的是2.7.15)配置python的环境变量配置python目录下(默认目录的话应该在C:\Python27)Scripts/pip的环境变量安装protobuf (在cmd下敲入下面的命令完成安装 下同 pip...

2018-09-10 15:50:42 403

原创 git push出现的错误 failed to push some refs to ...的解决

出现问题git 版本库发生了改变,并没有更新到本地,提交Commit的时候远程库和本地库发生了冲突。在push的时候出现了这样的错误:error:failed to push some refs to。解决方案因为远程版本库与本地库不一致导致的冲突,则需要把远程库同步到本地库。下面是命令git pull --rebase origin master这条指令的意思是把远程库中...

2018-08-27 12:14:16 2237

原创 DoTween 学习之UI动画的前放和倒放的方法

记笔记,记笔记 UI动画的前放和倒放的效果是这样的:UI动画的前放和倒放方法一: 利用一个布尔变量简单暴力的判断UI的位置,然后通过DOLocalMove()实现UI的动画 具体代码如下:using System.Collections;using System.Collections.Generic;using UnityEngine;using DG.Tweenin...

2018-06-06 18:53:03 6763 1

原创 剑指Offer

剑指Offer[C++] 4:替换空格面试题4 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 解题思路 遍历一遍字符串,统计字符串长度和空格数目。因为空格要替换成“%20”,因此每替换一个空格长度增加2,因此替换后的总长度=字符串长度+空格数*2。字符串从后向前替换,需...

2018-02-27 11:59:59 314

原创 【UnityShader入门精要】Unityshader中的漫反射(逐像素漫反射diffuse)

公式Cdiffuse=(Clight *mdiffuse)max(0,n*l) 实现代码// Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject'// Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject'Shader "Unity Shader

2017-11-04 14:28:37 261

原创 【UnityShader入门精要】Unityshader中的漫反射(逐顶点漫反射diffuse)

公式Cdiffuse=(Clight *mdiffuse)max(0,n*l) 实现代码// Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject'Shader "Unity Shaders book/Chapter 6/Diffuse Vertex-Level" { Properties { _D

2017-11-04 13:47:44 357

原创 VS2013 多行注释快捷键

Ctrl+k 和 Ctrl+c 进行多行注释 Ctrl+k 和 Ctrl+u 取消注释

2017-06-22 19:56:06 765

转载 Shader 渲染队列、ZWrite和ZTest

本文转自 http://blog.csdn.net/lyh916/article/details/45317571 仅供学习 (1)什么是深度? 深度其实就是该像素点在3d世界中距离摄像机的距离。离摄像机越远,则深度值(Z值)越大。(2)什么是深度缓存? 深度缓存中存储着准备要绘制在屏幕上的像素点的深度值。如果启用了深度缓冲区,在绘制每个像素之前,OpenGL会把该像素的深度值和深度缓存的

2016-12-28 16:43:31 412

原创 shader中面的剔除 (cull)

shader中面的剔除主要包括三种: cull off 不剔除 cull back 剔除背面(背向摄像机那面) cull front 剔除前面(朝向摄像机的面)

2016-12-28 15:39:23 1540

原创 Win10 asset store 资源下载资源默认保存路径

之前每次下载完 资源商店里的东西总是忘记资源的默认下载位置,索性就自己把win10 的资源商店里下载的资源路径保存下来,也就不用每次都百度了 看自己 的就行了 嘿嘿! —————————————————————————————————————————————————————————— 咯咯咯咯咯下面 切入 正题 咳咳 !! 在这里!! C:\Users\LD\AppData\

2016-12-05 10:27:41 3163

转载 【转】Lua简明入门教程

运行首先,我们需要知道,Lua是类C的,所以,他是大小写字符敏感的。下面是Lua的Hello World。注意:Lua脚本的语句的分号是可选的,这个和GO语言很类似。代码如下:print("Hello World")你可以像python一样,在命令行上运行lua命令后进入lua的shell中执行语句。代码如下:chenhao-air:lua chenhao$ lua Lua 5.2.2 Copy

2016-10-18 21:03:05 556

转载 LOD Group(Level of Detail)细节级别

LODGroup 就是所谓的细节级别。1.使用这个技术,一般是在解决运行时流畅度的问题,采用的是空间换时间的方式。 2. 根据摄像机离对象的远近,切换不同细节级别的对象,达到一种目的:近处的对象细节丰富,远处的对象忽略很多细节,从而减少渲染计算,提高流畅度。 3.流畅度的提高,是靠切换不同级别的对象,这就使的原来一个对象,现在需要几种不同级别的对象,这增加了运行时内存的使用,也增加了美

2016-08-24 11:17:35 5481

原创 【shaderToy】中openGL转到unity中的一些技巧

常用的内置uniformiResolution =》_ScreenParamsiGlobalTime => _Time.yglFragCoord => float4 sp:WPOS // 需要 #pragma target 3.0, 另外的方式请见下面vec2 => float2mix => lerpmod => fmodtexture2D => tex2DtextureCube => texCU

2016-07-19 17:18:51 1471 1

原创 Inspector属性面板中[HideInInspector]、ExecuteInEditMode等属性介绍

[HideInInspector]:表示将原本显示在面板上的序列化值隐藏起来。 C#的Public是公开的,当被其他物体或者代码获取的时候一样可以取得这个值,说白了目的就是不让编辑器去修改这个值,而是在代码过程中去改变,并且可以在代码中获取到值。 [SerializeField]:表示将原本不会被序列化的私有变量和保护变量可以序列化,这么他们在下次读取时,就是你上次赋值的值。 1如果a是公有

2016-07-14 16:14:32 2654

原创 简单光照模型(Phong模型(镜面反射)与 Blinn-Phong光照模型(修正镜面光) )

Phong模型认为镜面反射的光强与反射光线和视线的夹角相关: 计算公式为:R + L = 2 * dot(N, L) * N 即 R = 2 * dot(N,L) * N - L 光源发出灯光,在材质表面反射,材质决定吸收灯光的什么分量和反射什么分量,而材质本身是不具有颜色的!在现实世界中,我们看到的物体颜色不是属于物体的,而是光与其作用后反射的。代码和效果图如下: Shader "Sbi

2016-06-21 15:11:50 4336 3

原创 简单光照模型(Lambert 光照模型)

环境光是对光照现像的最简单抽象,因而局限性很大。它仅能描述光线在空间中无方向并均匀散布时的状态。很多情况下,入射光是带有方向的,比如典型的阳光。如果光照射到比较粗糙的物体表面,如粉笔,由于这些表面从各个方向等强度地反射光,因而从各个视角出发,物体表面呈现相同的亮度,所看到的物体表面某点的明暗程度不随观测者的位置变化的,这种等同地向各个方向散射的现象称为光的漫反射(diffuse reflection

2016-06-21 14:50:45 6698 1

转载 使用Animation编辑器编辑动画

本文转自http://www.xuanyusong.com/archives/2246 仅供学习使用Unity提供了Animation编辑器,它可以为我们编辑物理动画。举个例子比如场景中有一个来回摇动的秋千,这个秋千在项目中完全只起到衬托作用,它不会与别的游戏对象有任何交互。如果这个秋千也用代码来写控制它来回摇动,会感觉小题大做。此时完全可以使用Animation编辑器来完成。但是它目前还不能编辑

2016-06-16 17:49:44 3570

转载 关于iTween 插件的运动篇

最近项目中需要加入一些模型移动的小动画,学习过程中发现了iTween这个类库。它主要的功能就是处理模型从起始点到结束点之间运动的轨迹。(移动,旋 转,音频,路径,摄像机等)它是一个开源的项目并且完全免费,它们的官网在这里 http://itween.pixelplacement.com/index.php 打开网之后点击右上角Get iTween图标即可,或者在AssetStores商店中直接下载。

2016-06-15 16:15:04 1649

转载 unity的#pragma strict,#pragma downcast等指令含义和作用

在一些Unity脚本的开头经常可以看到 #pragma strict,#pragma downcast、#pragma implicit指令,那么这些指令是代表什么含义?又有什么作用呢? #pragma strict,此指令的含义是强制输入,也就是我们在声明变量时,需要精确的声明变量是什么类型,而不是让编译器来自己推测变量的类型,因此,也不能随便的使用一个随机的名称并让编译器来为你实例化此变

2016-06-13 17:27:24 840

原创 关于shaderLab中 tags(标签)

SubShader内部可以有标签(Tags)的定义。Tag指定了这个SubShader的渲染顺序(时机),以及其他的一些设置。1.”Queue”标签。定义渲染顺序。预制的值为 (1)”Background”。值为1000。比如用于天空盒。 (2)”Geometry”。值为2000。大部分物体在这个队列。不透明的物体也在这里。这个队列内部的物体的渲染顺序会有进一步的优化(应该是从近到远,early

2016-05-31 16:49:11 4454

umodel_win32.zip

UE4游戏解包工具

2021-03-31

cocos2d 配置环境的一个lib文件

在配置cocos2d-lua环境的时候 用的是VS2015 因为是cocos2dx3.17所以弃用了vs2013 最好是VS2015 win7系统的需要把该文件放在在 目录C:\Windows\System32下

2019-01-02

protobuf-net

Protobuf(Google Protocol Buffers)是google开发的的一套用于数据存储,网络通信时用于协议编解码的工具库.它和XML和Json数据差不多,把数据已某种形式保存起来.Protobuf相对与XML和Json的不同之处,它是一种二进制的数据格式,具有更高的传输,打包和解包效率.

2018-09-10

Curved+UI+-+VR

曲面UI 支持 Oculus HTC VIVE 等 要求Unity 5.1.4 或更高版本。

2017-12-01

ShaderlabVS2017

shaderlabVS2017 支持shader代码高亮 函数提示、自动补全

2017-12-01

Vive-Telepoter

用于VR场景漫游

2017-08-29

SteamVR Plugin

SteamVR Plugin 主要用HTC Vive 虚拟现实开发

2017-08-29

shaderLabVS

本插件shader编程VS高亮提示

2016-07-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除