自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

炼丹炉里有煤灰

欢迎交流:游戏、仿真模拟、人工智能、手绘、前后端、客户端

  • 博客(212)
  • 资源 (7)
  • 问答 (1)
  • 收藏
  • 关注

原创 最近写点东西吧

比较惊讶的是当年排名900多,现在排名70000。不知这排名的算法怎么来的,按理说应该掉到数十万以后啊,不会是就剩70000个用户了吧。记录和分享的爱好与时间上的冲突,直接导致累计了1000多篇草稿躺了这么久。最近抽空慢慢发,人过留痕。和以前一样,有问题欢迎私信闲聊,可能帮不上忙,但有非常规的建议。回来的原因更简单:不怕偶尔,就怕日常。补肾和植发也不少钱呢。离开的原因很简单:工作加班严重,23点下班是日常。不知博友仍卷否,待到归来已中年。时隔三年,重新回归CSDN。

2023-08-04 15:01:16 96 2

原创 unity 使用粒子系统 实现一个火焰燃烧效果

早在去年,我就打算写一套特效教程。但苦于生计,一直也没时间。希望新工作能多给我留点时间吧。哎。准备工作。本教程素材需要自己制作,需要的工具是ps、shader、unity。有不会的没关系。跟着步骤走就可以。步骤一:制作火焰素材制作素材我们只需要ps软件。进入软件后,首先删掉默认图层。使图片背景透明。打开ps后,点击左侧工具栏的钢笔在画布上拖出一个泪滴形状然后在图层窗口中点击路径选项卡,就能看到路径的图层了:然后用鼠标右键点击路径图层,就弹出了这个东东:点击建立选区选项,弹出选取设置窗口

2020-07-05 08:48:33 9877 6

原创 5分钟了解Ai 之 深度学习 自动玩游戏 (tensorflow2实现dqn网络)

准备环境安装python 游戏包pip install gym运行这个脚本,如果正常出现名称列表,就是说已经成功安装了# Deep-Q learning Agentimport tensorflow as tfimport gym.envs as envsimport numpy as npimport tensorflow.keras as kerasprint(envs...

2019-10-24 15:20:55 8155 15

原创 5分钟了解Ai 之 对抗学习 图像生成 (tensorflow2实现gan网络)

该段实例来源于网络,做了一些修改和标注from __future__ import absolute_import, division, print_function, unicode_literalsimport tensorflow as tffrom tensorflow import kerasimport globimport imageioimport matplotlib...

2019-10-22 16:12:48 475

原创 原生javascript 100行js代码实现一个mvvm框架

一,基础知识1,何为MVVM(双向数据绑定) 双向数据绑定(MVVM):数据(M)发生变化时立即影响视图(V),而视图(V)发生改变也会立即影响数据(M)2,实现数据绑定的方法 实现数据绑定的做法有大致如下几种: 1,观察者模式(backbone) 发布者发布事件,观察者监听事件。当某些方法被触发时,就通知观察者执行预定操作。 观察者可以...

2018-04-23 21:14:51 2119

原创 五分钟了解最短路径寻路算法:Dijkstra 迪杰斯特拉

可以看到 A>B>D与A>C>D 的代价都相同,边相加都等于10. 而A>C>B的路线代价扽与9,是最短路径。例子:几个节点之间,相连接的线段有固定长度,该长度决就是通过代价。查找到花费最少的路径。此段代码,用于求出加权图最短路径,加入了防循环,可以在有向图、无向图中使用。有权图,理论上来说把权化为等量节点,也可以使用最短节点算法求最短路径。寻路算法在生活中应用十分常见。本文实现的是关于图的最短路径查找算法。复杂度:最坏情况应该就是O((n-1)该算法比较常见于游戏和室内地图导航。

2023-08-27 03:07:15 749

原创 5分钟了解AI算法 之 隐式马尔可夫模型(Hidden Markov Model)

在之前的文章中已经介绍了马尔可夫链,马尔可夫模型与马尔可夫链的区别在于,隐马尔科夫模型多了一条不可见的时序状态。概率、学习、回归。

2023-08-27 02:48:58 161

原创 5分钟理解AI算法 之 马尔可夫链 Markov Chain

假设你正在策划旅游路线,当然是希望旅游地点之间是相近的且有序的,所以你的第一站目的地会理所应当的会直接影响第二站的选择。结论:在两地移动2次后,如果当前在北京,继续留在北京的概率是0.25,去深圳的概率是0.21.如上所示,如果你现在身在北京,下一站为深圳的概率是0.3,继续停留在北京的概率是0.2,如果当前身在深圳,下一站去北京的概率是0.7,继续停留在深圳的概率是0.5。如果当前在深圳,继续留在深圳的概率是0.46,去北京的概率是0.49。那如果我想知道,已经在两地辗转移动两次后的下一站概率怎么办呢?

2023-08-25 22:15:02 670

原创 GODOT游戏引擎简介,包含与unity性能对比测试,以及选型建议

godot游戏引擎简介,与unity引擎的2d/3d渲染性能测试,以及技术选型建议

2023-08-05 16:39:09 8800

原创 unity中使用代码接绘制三维模型

一 模型的构成在三维世界中,绘制一个模型并不是什么很复杂的问题。只要知道了基本原理一切需求便迎刃而解。如下图所示,任何模型都是由点线面构成的,而面的最小单位是三角形。任何一个多边形的面,都是由多个三角形构成的。比如一个四边形,就是由ab两个三角形构成的。构成一个正方形的两个三角形,可以由四个点构成,也可以由六个点构成。下图就是由四个点构成的正方形,两个三角形分别是abc和adb。一个三角形,由三个点组成。在计算机渲染图形的时候,会根据三个点的位置来对他们包围的图形区域进行补间操作,补间出来的

2022-12-25 20:29:02 4181

原创 高级项目经理十大领域背诵口诀与论文模板

进程吃干饭 正疯狗裁人进度管理制定进度管理计划,定义活动,活动排序,估算活动资源,估算活动历时,制定进度计划,控制进度成本管理指定成本管理计划,项目估算,项目预算,控制成本。质量管理制定质量管理计划,实施项目质量保证,质量控制干系人管理识别干系人,制定干系人管理计划,管理干系人参与,控制干系人参与范围管理指定范围管理计划,收集需求,定义范围,建立wbs(分解任务),确认范围,范围控制项目整体管理编制项目章程,指定项目管理计划,指导和管理项目执行,监督与控制项目工作,项目整体变更控制,

2022-12-25 20:24:47 3740

原创 windows mac双系统下QT中使用protobuf

在windwos或max系统中,在qt里使用protobuf

2022-12-25 20:21:38 709 1

原创 在表面着色器中使用顶点和片元着色器

添加顶点着色器1 修改着色器声明用#pragma surface surf Standard fullforwardshadows vertex:vert fragment:frag替换#pragma surface surf Standard fullforwardshadowsShader "Unlit/mprob"{ Properties { _MainTex ("Texture", 2D) = "white" {} _C

2021-07-21 23:33:14 435

原创 使用邪恶公司颁发的企业证书unity 打包 ios

经过2天的探索终于搞明白使用企业打包的流程首先说一下我的应用背景:公司需要一个ios app 给客户使用。公司发给我.p12的企业证书公司ios开发者企业账号并没有把我加入开发team企业证书申请的那些 网上到处都有,我这个使用场景没有用到那些就不赘述了。无图干货一 安装证书双击.p2扩展名的企业证书,会提示你输入证书密码。这个密码管负责人要。然后还会要求你输入当前电脑的登录密码。输入后成功安装证书。证书安装后不要在钥匙管理器中删除,否则会造成证书失效。二 导出unity项目将uni

2021-04-21 10:32:37 505

原创 unity editor 编辑器插件制作基础:五、物体在Scene窗口中编辑状态下的辅助显示,以及控制功能扩展OnDrawGizmos GizmoType

一 说明该功能只能在编辑状态下运行,并只能在scene窗口中显示。脚本必须继承MonoBehaviour ,并且引入UnityEngine和UnityEditor库可以选择相关方法,在鼠标选择父物体或子物体的范围内执行,也可以设置被选择,或不被选择才执行,可以用于显示标签、辅助线等用途大量可直接调用的scene组件都可在这里找到 https://docs.unity3d.com/ScriptReference/Handles.html1.1 引用库using System.Collections

2021-02-03 02:51:24 832

原创 unity editor 编辑器插件制作基础:四、Scene窗口中的子窗口面板菜单UI组件,以及物体对象控制组件功能扩展

https://blog.csdn.net/LLLLL__/article/details/112604712

2021-01-27 10:54:05 898

原创 unity editor 编辑器插件制作基础:三、自定义窗口组件

using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;public class MapCreatorTools : EditorWindow{ [MenuItem("GameObject/window")] static void AddWindow() { //创建窗口 Rect wr = new Rec

2021-01-26 14:13:58 760

原创 unity editor 编辑器插件制作基础:二、脚本组件inspector Edtor GUILayout高级面板功能扩展

1首先必须创建继承了Monobehevier的脚本,并将其附在物体上。2 然后创建继承unityEditor的脚本,与之前创建的脚本绑定,用于专门处理inspector控件。普通脚本editor脚本注意这个脚本如果放在editor文件夹内,打包...

2021-01-26 13:44:17 485

原创 unity editor 编辑器插件制作基础:一、脚本组件inspector面板UI组件功能扩展

新建工具栏菜单1.首先在Asset下创建Editor文件夹,Editor文件夹中的内容仅作为开发工具保存在项目中,不会被打包进程序包中2.并创建cs脚本粘贴该代码代码:using System.Collections;using System.Collections.Generic;using UnityEngine;//第一步加载unity编辑器库和io库using UnityEditor;using System.IO;//第二部继承Editorpublic class NewBe

2021-01-26 10:49:05 787

原创 unity Camera相机组件 和 cinemachine摄像机组件 功能实现 镜头角度旋转、平移、缩放、位置重置、自动避障、多摄像机切换等功能相关设置技巧

虚拟摄像机freelookA,freelookB当A根据目标位置发生移动,切换到B,再由B切换回A时,摄像机朝向为切换到B时的朝向,如果需要复原摄像机位置,需要:1.将binding mode改为LockToTargetWithWorldUpfreeLookCam.PreviousStateIsValid = false;freeLookCam.m_XAxis.Value = 0;freeLookCam.m_YAxis.Value = 0.5f;3.如果重置后X轴位置不对,检查headin

2021-01-11 11:17:09 8418 6

原创 python 实现网页抓取的代码

编写一个python的刷新器进入相关库# 引用库,python3 request并入URLIb中import urllib.requestimport timeimport random# 定义地址库urls = [ # 1 'https://blog.csdn.net/lengyoumo/article/details/110957550', 'https://blog.csdn.net/lengyoumo/article/details/106506810', 'h

2020-12-31 22:29:28 287

原创 unity loading页资源混合加载

关于Loading页的混合加载上文我们聊了Loading页实现场景切换的功能。 细心的同学可能已经发现了,loading页加载场景时加载的都是本地资源,也就是会随着游戏打包发布的固定资源。如果我们有些资源来源于网络怎么办? 其实也很好解决,只需要我们将loading页改造为分步加载即可。思路及原理有两种实现方案:所有场景的网络资源统一在loading场景中管理,在切换到不同场景时使用不同的网络数据与本地资源加载做步骤组合从loading场景切换到目标场景时,不释放loading场景,在目标场景

2020-12-31 22:24:49 572 2

原创 unity场景切换 场景预加载 与loading页面加载进度条显示

关于场景转换和loading页我们玩游戏的时候,在进入游戏或场景切换的时候一般都会有一个loading页面。如果我们制作一个loading页应用到所有的场景转换,那无疑会减少很多麻烦。实现思路专门用于加载资源。一般我们会专门建立一个loading的场景,然后每次场景切换时我们都先载入loading场景,在loading场景中加载目标场景的资源,当加载完成后,再由loading场景切换到目标场景。实现步骤...

2020-12-31 22:18:49 3710

原创 unity3d 批量替换模型材质的脚本 一键替换模型及子物体材质

没什么好说的,特殊需求特殊实现。批量替换模型及其所属子物体所有材质的脚本。步骤1 在assets文件夹下 建立名为Editor的文件夹,该文件夹不会被打包编译,只会在unity编辑器下运行步骤2 在Editor文件夹下建立名为ChangeModelMaterils.cs的脚本,然后将下列代码粘贴using System;using System.Collections;using System.Collections.Generic;using UnityEditor;using Unity

2020-12-25 10:39:49 3929 2

原创 计算机数学基础:斜率与截距、导数、权重的关系

斜率斜率指的是,坐标系中一条直线度倾斜度。斜率的作用是知道斜率和任意一点可以求出一直线的位置和方向。设坐标系中的直线l 过点p0 和 点p,则斜率k为:k=tan(α)=△y△x=y2−y1x2−x1ory1−y2x1−x2k= tan(\alpha) = \frac{\triangle y} {\triangle x} = \frac{y2-y1}{x2-x1 } or \frac{y1-y2}{x1-x2}k=tan(α)=△x△y​=x2−x1y2−y1​orx1−x2y1−y2​直线的表达

2020-12-19 16:24:58 4238 1

原创 Unity Animation Event 动画事件使用教程 及事件无法触发不触发的解决办法

Animation Event ,顾名思义,就是动画中的事件。比如我们现在有这样的需求:当前模型移动到某个位置后触发一个自定义的事件,然后再移动回来,这时就需要调用Animation event来实现了。Animation 的使用方法使用Animation Event有两种方法。一种是通过代码添加事件。一种是使用可视化动画控制器来添加事件。个人比较推荐动画控制器的添加方式,因为这样更加直观而且修改更加方便。下面分别说说这两种事项方式一 通过动画控制器添加事件步骤:在animator绑定的物体上添

2020-12-11 10:38:23 16747

原创 Unity Animator Animation详解及应用实例教程

什么是animat本质上讲,动画就是以时间帧的方式记录物体某一时刻的状态,然后按一定顺序播放。所有软件的动画原理都是如此。什么是Animatoranimator,就是unity 用于管理多个动画播放状态的管理器,它允许你通过拖拽的方式管理你的动画顺序与触发条件。从而实现复杂的动画或交互效果。然而,animator最最有魅力的地方,在于它对动画的融合、过度处理。这一点会在稍后讲到。...

2020-12-10 14:55:23 7435

原创 Anti-Aliasing抗锯齿 SSAA MSAA FXAA三维游戏抗锯齿技术浅谈

今天组里同学询问关于抗锯齿的问题,我尽量简化成人话方便理解。关于抗锯齿的技术有很多种,有的基于硬件,有的则完全依赖算法计算。总的来说,锯齿是软硬件沟通差异导致的问题,是开发者最常见的问题之一。实际上很多引擎或三维包都自带抗锯齿算法,比如FXAA, MSAA, SSAA等。知道其中原理有助于我们因地制宜地选择相应技术实现甲方的无耻需求,也可以方便的实现自己下流的目的。SSAA图像缩放抗锯齿技术。原理:输出屏幕结果时,先生成一个更大分辨率的图像,然后再缩放成为目标分辨率图像。由于最终输出的每个像素都

2020-12-02 15:19:24 1919

原创 shaderlab 中 use pass、grab pass的用法

use passuse pass 用于帮助shader代码重复使用。使用步骤:1, 被引用的shader,在被引用的shader中定义shader名和pass名shader 1:// 定义shader 路径Shader "Unlit/shader1"{ Properties { _MainTex ("Texture", 2D) = "white" {} } SubShader { Tags { "RenderType"="Opaque" } Pass { //定

2020-12-01 15:00:30 1818

原创 unity shaderlab特效之 建筑结构科技透视效果 贴近消失远离显示

公司需要做个建筑结构演示。看了产品经理的方案感觉实在太low,真的看不下去了。有些人就是,能抄就抄,如果没得抄就尼玛找借口说怕技术实现不了。于是我就极不情愿的修改了方案做了这个玩意。给他看的时候我告诉他:公司难得有我这么牛逼的技术,你们想象应该大胆点。其实不少科幻或动作电影中都有类似特效,实现起来并不复杂,只需要将三个小特效结合起来就能实现:建筑结构透视毛玻璃特效贴近显示先贴出最终的笑狗图~1 结构透视的shader其实就是半透明嘛,根据需求调整cull的面。这个过于初级我就不贴了。

2020-11-24 16:40:02 2874 3

原创 unity 自定义shader cginc 函数工具库并引用

定义工具库unity 自带多种shader工具库,比如所谓工具库 就是类似cging.shader之类的引用工具如果我们需要自定义该怎么办呢定义工具库文件在shader文件中引入

2020-11-22 14:45:03 5542

原创 使unity 支持gltf 3d模型格式 UniGLTF插件

关于gltf模型格式gltf是一种更适合web项目使用的3d模型格式。相比较其他模型格式他的优势十分明显:大幅减少模型容量,有效节省带宽。根据本人体验,可以至少可以节省5倍的空间。现在很多3d人间都已经支持该格式了,就连自带的3d画图板都可以直接解析该格式了UniGLTF插件如何导入...

2020-11-13 11:34:26 4825 1

原创 unity使用遮挡剔除occlusion culling bake时出现 No asset directory的问题

在unity中使用遮挡剔除功能的时候 ,bake作用域出现 No asset directiory的问题。经试验,是因为scene没有保存,所有无法生成bake data。只要保存scene即可解决

2020-10-29 15:53:54 1860

原创 unity静动态批处理的触发条件以及无效的问题解决办法 batches saved by batching

使用unity内置的批处理功能可以起到很好的性能优化效果。批处理分为静、动态两种【静态批处理 Baches Static】静态批处理效果最好条件要求最简单,但要注意被标记为静态批处理的物体不允许改变位置。由于光照bake的原因,也会导致静态物体的阴影信息会烘焙到受影响的物体贴图上,所以从效果上也不应该再被移动。【使用条件&步骤】首先必须确定相同批次目标物体的Mesh Filter组件的Mesh必须相同点击目标物体,在Inspector窗口勾选Static。【使用动态批处理(Bach

2020-10-28 15:00:58 3970 1

原创 unity Physics.Raycast 射线进入离开collider、开始结束碰撞检测功能的实现

问题与解决思路问题当使用unity的射线组件时,发现unity只提供了射线与物体碰撞的时的响应办法。这就尴尬了,因为我的需求是获取射线在某物体停留、或是射线离开某物体的信息。本以为被碰撞物体的collider会解决这个问题,结果发现虽然使用raycast需要物体必须有collider,但并不会触发collider相关的事件。没办法,只能自己解决了。解决思路解决思路其实很简单,编写一个脚本,定义射线与物体碰撞、停留、离开三个事件,通过不断更新射线的扫描目标信息并与上一帧已保存的信息进行对比,来推算行为

2020-09-13 16:34:41 4976 3

原创 unity json数据处理方式之 LitJson 使用教程,支持键值对方式,支持包括webgl在内的全平台

最近遇到了新的需求。由于后端人员数据不规范,导致本该是数组的部分被构建成了对象。由于unity自带的json工具JsonUtility必须要构建相同的类结构才能反序列化,所以这样就出现了一个问题,即数字无法成为参数。我们无法构建这样的数据格式。那就没办法了。只能选择键值对的方式来获取数据目前支持全平台编译的json工具库比较有名的有三个,分别是:JsonUtility、newtonjson还有LitJson。其中newtonjson体积过于庞大(250k),而JsonUtility又不支持键值对。所以我

2020-09-03 18:03:10 8313 1

原创 从unity到unreal4 虚幻4学习笔记 一 : ue4与vs studio、vs code开发环境的安装与配置

前言转到ue4的理由我是个资深unity玩家,自认为可以使用unity做任何事。对虚幻的仰慕纯属技术信仰,懂的都懂不多解释。促使我选择在这个时间点全面拥抱虚幻的,是长期以来对unity不满和失望的集中爆发。计划任务由于最近工作比较多时间有限,预计一个月拿下ue4的常规技能,两个月精通,并能出一份高质量demo。 相关学习过程我会逐步更新。有感兴趣的朋友可以与我一起学习交流。一 安装ue41 注册账号登录官网地址: https://www.unrealengine.com/zh-CN如果有ep

2020-09-01 11:21:03 4373

原创 扩展unity Playerpref 支持更多数据类型,解决不支持bool、vector3、quaternion等问题

unity Playerpref 是什么unity Playerpref 是unity自带的本地数据持久化的组件。在不同的平台都可以实现本地保存。比较适合保存用户设置、游戏存档等。unity Playerpref 的基本调用方法unity Playerpref 默认只支持三种数据类型的保存,分别是string、int、float。对应的调用方法是://首先必须引用的using UnityEngine;//字符串类型数据的写入PlayerPrefs.SetString ("value name

2020-08-10 14:35:29 1615

原创 unity phpstudy 打包webgl 跨域问题 UnityWebRequest CORS No ‘Access-Control-Allow-Origin‘ header is present

问题描述unity项目打包成webgl,在使用外部资源或使用UnityWebRequest获取数据时,浏览器提示错误:Access to XMLHttpRequest at has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.解决思路只是普通的前端跨域问题。有点后端经验就能解决,只需要做跨域设置。但如果本地测试环境是phpstudy

2020-08-06 16:40:54 3379

原创 Permission denied(publickey)的解决办法:github/gitlab仓库与本地关联

一 登录git账号git config --global user.email "git上注册的邮箱名"二 生成ssh key打开git bash(也可以加入path)输入这段代码后回车: ssh-keygen -t rsa -b 4096 -C “your_email@example.com”然后按回车会出现以下提示:这个是问你key文件的保存目录。这里需要特别注意,如果你想省事,就不要输入任何字符,直接按回车。否则会出现Permission denied(publickey)的问

2020-07-29 13:11:45 2313

cudart64_100.dll 解决"dlerror: cudart64_100.dll not found"的问题

解决"Could not load dynamic library 'cudart64_100.dll'; dlerror: cudart64_100.dll not found"的问题 下载后放到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin 目录下

2019-10-23

CScape 1.0.3b + Final IK v1.7.rar

城市创建工具,支持大范围随机城市创建。和动态骨骼工机具。我的博客里有教程

2019-07-17

CScape1.0.3b unity城市建筑插件

城市创建工具,支持大范围随机城市创建,我的博客里有教程

2019-07-17

Uni Bullet Hell V1.4.5 unity子弹插件

内资多种子弹发射轨迹函数,飞机,塔防类游戏神器

2019-07-17

QHierarchy+4.2.rar

unity 增强hierarchy面板的好用插件 安装完成后,在上面的菜单栏中选中tools -> qhierarchy 设定开启项目

2019-07-17

unity 上最好的公路路径插件 EasyRoads3D Pro v3.1.6

最新版。分享给csdn的朋友。我的博客里还有相关的使用教程,正在更新中,因为我正在做赛车游戏,需要实现定制道路、随机道路相关的功能,需要的朋友可以去看看。

2019-04-25

ProBuilder 2.9.8f3建模工具 unity插件

买到的。现在贡献给csdn的朋友们。买到的。现在贡献给csdn的朋友们。

2017-12-18

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

TA关注的人

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