星空不语

思而不学则殆,学而不思则罔。

[Unity3D]动态生成平面网格

在编写几何着色器的时候发现默认的Plane无法满足需求,并且顶点顺序未知,于是便写了一个网格生成代码,便于生成指定大小的Plane,且顶点顺序可控。 效果如下: 一个单元格由4个顶点,两个三角面组成。 四个顶点如下图 则生成面的顶点顺序为: 左上三角形:0 -&...

2018-09-03 15:40:22

阅读数 1695

评论数 0

[UE4]UMG CheckBox Group实现

学习UE4的时候,发现UMG居然没有CheckBoxGroup,CheckBox分组需要自己管理。相比于Unity3D来说,UE4在UI方面确实欠缺很多。无奈之下只好自己实现一个。实现效果如下: 编辑界面如下: 代码实现如下:CheckBoxGroup.h// Fill out your co...

2017-11-03 10:09:17

阅读数 795

评论数 0

[Unity3D]Shader编程之动态屏幕遮罩

屏幕可视范围跟随目标物体移动,可修改可视范围大小,边缘渐变大小、以及遮罩颜色,支持最高物体数量可在Shader中修改,当前版本支持最多9个物体。

2017-11-02 16:50:57

阅读数 2615

评论数 7

[MYSQL]存储过程使用范例

存储过程封装了一系列的数据库操作,这样既方便了程序中调用,也加快了数据库访问速度。同时一些简单的逻辑修改也不用直接修改程序,直接修改存储过程即可。

2017-07-11 23:59:50

阅读数 212

评论数 0

[C++]MYSQL 数据库操作封装及连接池实现

Database类为单例类、线程安全、实现了连接池,并且封装所需要的操作。本代码在Ubuntu下测试可用,使用Mysql connector c++连接数据库,并启用C++11特性。

2017-07-11 23:44:45

阅读数 2391

评论数 4

[C++]类中的静态变量必须初始化

有一段时间不用c++了,突然用起来写了个类,编译居然报错了,怎么看都看不出问题出来=。=,不过最终还是找到原因所在了。类中的静态变量必须初始化

2017-04-01 15:59:22

阅读数 402

评论数 0

[Unity3D]编辑器扩展之数组或List显示

之前一直使用循环的方式创建,现在找到了一种更简便的方法,效果和Inspector面板上是一模一样的。省事了ヾ(Ő∀Ő๑)ノ太好惹!

2017-02-05 22:48:27

阅读数 10965

评论数 0

[Algorithm]随机抖动整数拆分

测试效果: 当number=101、size=6、wave=3时,可得到如下效果: 17、19、16、18、13、18 18、15、18、14、19、17 可看到生成的随机数在16上下浮动,幅度不超过3,且总和为101。源码如下:using System.Collections.Generic;...

2017-01-31 01:44:02

阅读数 556

评论数 0

[Unity3D]Shader编程之贴图切换

本shader实现基于世界坐标的贴图置换效果。效果如下: 设置面板如下: 可在面板上设置切换方向,与切换对象,及其切换速度。shader实现如下:Shader "XM/Effect/SwapTexture" { Properties { _Color...

2016-12-31 01:11:20

阅读数 3635

评论数 0

[Unity3D]Shader编程之腐蚀消失

本片shader实现的效果是模型腐蚀消失,且腐蚀的边缘大小可以调、颜色可调。效果图如下:设置面板如下: 使用时需要给ClipMask参数给一张噪点图,设置合适的cliplinesize和cliplinecolor,然后调整clipalpha就可以了。原理是通过获取噪点图上对应的颜色,转换成灰度,...

2016-12-05 19:53:34

阅读数 1541

评论数 0

[Unity3D]Shader编程之扫描显示2

上一篇使用的方式是对UV进行剪裁,如果用于模型的话,会出现一些问题。本片使用的方式是对模型进行模型空间的剪裁,可设置剪裁方向。效果如下:设置界面如下: mode用于设置剪裁方向。 clip用于设置剪裁值。shader实现如下:Shader "XM/ScanEffect2" ...

2016-12-05 19:29:06

阅读数 1082

评论数 5

[Unity3D]Shader编程之扫描显示

通过Shader实现,从左向右的扫描显示,可自定义扫描颜色、宽度、速度。效果图如下 编辑器界面如下 Shader源码如下Shader "XM/ScanEffect" { Properties { _MainTex("Main Tex...

2016-11-28 23:16:16

阅读数 2652

评论数 0

[Unity3D]单例的一种实现方式

有些类,整个程序运行中,只有一个实例,我们可将其设置为单例,方便程序中其他部分的使用。使用方式如下using UnityEngine;public class GameManager : Singleton<GameObject> { public void Func(){} ...

2016-11-28 22:33:51

阅读数 328

评论数 0

[Unity3D]通用对象池类ResourcePool<T>

通用对象池,使用时会将常用的对象至于池顶,如果设置了池的大小,超出池的未经常使用的对象将被移除,并且执行回调,可在回调中对移除对象进行其他操作。 可对压入的对象进行命名,通过名字来进行查找和删除。使用方式//...... ResourcePool<GameObject> _pool ...

2016-11-28 22:25:07

阅读数 696

评论数 3

[Unity3D]ResourceManager类及其编辑器扩展

为了方便程序中动态加载resources目录中物体,编写了一个ResourceManager的单例类,使用时需要将其附加到一个游戏物体上。可以实现对物体的分类、重命名、异步加载。可用方法如下://通过名字和类型加载,类型为0时,不判断类型 ResourceRes<T> Load<...

2016-11-27 19:46:31

阅读数 2148

评论数 3

[gSoap]使用RESTful架构搭建简单跨平台Webservice

简介  原先是直接使用的Socket来进行网络编程,但遇到高并发我就难以招架了,与是在网上找了一下,发现了开源的gSoap跨平台库,于是就开始尝试使用起来。   官方主页:https://www.genivia.com/products.html   说明文档:https://www.geni...

2016-11-07 22:43:23

阅读数 2415

评论数 2

[Algorithm]二分法查找算法

简介二分法查找(Binary Search)又称为折半查找(Half-Interval Search),是一种针对有序数列的查找方法。时间复杂度每次把搜索区域减少一半 最差:O(logn)O(logn) 最优:O(1)O(1)空间复杂度迭代: O(1)O(1) 递归: O(logn)O(lo...

2016-10-08 23:07:52

阅读数 438

评论数 0

[Algorithm]排序算法

闲来无事回顾一下原来所学的排序算法,包括冒泡、选择、插入、希尔、快速、归并排序,这六种。   首先依次讲解原理,最后放出实现及测试速度源码。冒泡排序  我想大部分人学习的第一个排序算法就是这个。   顾名思义,如泡泡般,越到水面就越大,即经过连续不断的判断,选取大(或小)的值进行交换,一轮结束...

2016-09-22 01:38:23

阅读数 492

评论数 0

[Unity3D]使用GL实现图案解锁功能

聊天是时候看到有人问如何在Unity3D的UGUI中实现图案解锁的功能,然后便试了一下。刚开始想用LineRender来实现,但又一想是要在UGUI中,然后就用了另外一种方法,即使用GL类来实现。   GL相关介绍及官方文档:https://docs.unity3d.com/ScriptRefe...

2016-09-15 21:50:06

阅读数 1102

评论数 2

[Unity3D]使用右键菜单打开工程

Unity没有像Vs那样的“*.sln”的项目工程文件,不能通过这个文件来打开工程。但是原有的打开已有工程的方法太过于麻烦了,则现在来通过添加右键菜单的方式,通过项目工程目录右键打开对应的工程。 步骤如下: 打开注册表,使用快捷键“Win + R”打开运行窗口,然后在输入框内输入“regedit...

2016-09-11 22:52:03

阅读数 956

评论数 0

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