自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

悲欢离合的博客

Good good study, day day up.

原创 C#读取和修改Inventor模型的属性

安装Inventor软件创建C#控制台程序,引入Inventor相关dll代码获取相关模型及属性using System;using System.Collections.Generic;using System.Diagnostics;using System.Linq;using System.Runtime.InteropServices;using System.Text;using System.Threading.Tasks;using Inventor;names.

2020-07-15 09:19:35 37

原创 移动硬盘安装系统无法读取电脑其他硬盘的解决方法

通过DISKPART.exe命令来解除限制1.开始-运行:cmd2.输入:DISKPART.exe搜索3.DISKPART>san4.DISKPART>san policy=onlineall5.DISKPART>list disk6.DISKPART>select disk 17.DISKPART>attributes disk clear readonly8.DISKPART>online disk...

2020-06-20 21:22:39 51

原创 Intellij Idea常用快捷键

Ctrl + F 查找Ctrl + R 替换Ctrl + Y 删除当前行Ctrl + X 剪切光标所在行Ctrl + C 复制光标所在行Ctrl + V 复制光标所在行Ctrl + D 复制光标所在行到下一行Ctrl + W 递进式选择代码块Ctrl + E 打开修改的一个历史文件Ctrl + N 根据类名来查找文件Ctrl + J 快速列出Live TemplesCtrl ...

2020-01-03 17:02:11 101 2

原创 Unity中使用gRPC进行数据交互

gPRC简介在gRPC中,客户端应用程序可以直接在其他计算机的服务器应用程序上调用方法,就好像它是本地对象一样,这使您更轻松地创建分布式应用程序和服务。与许多RPC系统一样,gRPC围绕定义服​​务的思想,指定可通过其参数和返回类型远程调用的方法。在服务器端,服务器实现此接口并运行gRPC服务器以处理客户端调用。在客户端,客户端具有一个stub(在某些语言中仅称为客户端),提供与服务器相同的方法...

2019-12-19 16:48:34 549 1

原创 搭建文字转语音(TTS)服务器

1.试用地址点击链接进行体验2.开发环境ASP.NET3.需求(1)需要动态将文本转化为语音(2)实现免费的转换过程(3)转换成语音后可以直接下载(4)将语音加载到U3D中试用3.实现过程(1)新建ASP.NET空工程(2)创建TextToSpeechController类,用于生成Wav文件(3)添加Speech类库(4)TextToSpeechControll...

2019-10-30 01:53:27 518

原创 Unity中合并Mesh生成LOD

Unity

2019-10-21 19:57:49 397

原创 下载Google瓦片地图并在Unity中作为场景底图

Unity

2019-10-21 11:25:32 973 2

转载 3D模型建模标准

3D模型建模规范本文提到的所有数字模型制作,全部是用3D MAX建立的模型,即使是不同的驱动引擎,对模型的要求基本是相同的。当一个VR模型制作完成时,它所包含的基本内容包括:场景尺寸、单位,模型归类塌 陷、命名、节点编辑,纹理、坐标、纹理尺寸、纹理格式、材质球等必须是符合制作规范的。一个归类清晰、面数节省、制作规范的模型文件对于程序控制管理是十 分必要的。首先对制作流程作简单介绍:素材采集-...

2019-08-07 09:32:00 1076

原创 Unity发布WebGL动态改变分辨率大小

修改画布大小在html中修改画布大小 function resetSize1() { //修改画布大小 document.getElementById("#canvas").style.width = "100px"; document.getElementById("#canvas").style.height = "100px";...

2019-07-04 15:41:31 1618

原创 Unity导入glTF格式模型

glTF介绍1.glTF(GL TransmissionFormat),即图形语言交换格式,它是一种3D内容的格式标准,由Khronos Group管理(Khronos Group还管理着OpenGL系列、OpenCL等重要的行业标准);2.glTF是一种免版税的规范,用于按应用高效传输和加载3D场景和模型;3.glTF的设计是面向实时渲染应用的,尽量提供可以直接传输给图形API的数据形式,...

2019-07-03 08:56:43 4104

原创 将Excel中的Oracle数据库表转化为编程语言中的类(带注释)

1.excel中表格形式2.转换后的类型格式3.excel中的公式代码="/// <summary>"&CHAR(10)&"///"&C4&CHAR(10)&"///"&UPPER(B4)&CHAR(10)&"///</summary>"&CHAR(10)&"public"&I...

2019-06-25 13:16:51 119

原创 Unity打开ShapeFile并关联属性(Bentley平台)

1.在Bentley中打开Shape文件,其中可以查看相应的Shape属性2.使用自主研发的Bentley导出插件导出每个地块的属性保存进入数据库,导出每个地块模型转化为fbx,通过元素ID进行关联数据关联。3.在Unity中通过UnityWebRequest获取数据库中保存的相关属性,根据ID号关联到模型上。【该方法不具有可操作性,仅用于记录相关处理方法】...

2019-06-20 17:29:20 566

原创 Unity导入SketchUp模型

1.SketchUp创建模型2.将SketchUp文件导入Unity3.设置Unity中相关选项4.完成

2019-04-24 11:51:03 1339

原创 Unity中判断点击按钮时鼠标事件(左键、中键、右键)

public UnityEvent leftClick; public UnityEvent middleClick; public UnityEvent rightClick; private void Start() { leftClick.AddListener(new UnityAction(ButtonLeftClick)); ...

2019-01-31 11:53:10 6073 3

原创 Unity中实现文件的打开(视频、图片、pdf、excel、word、ppt等)

public class OpenFileController : MonoBehaviour { string path; private void Update() { if (Input.GetKeyDown(KeyCode.A)) { path = Application.dataPath; ...

2019-01-31 11:09:29 2632 2

原创 Unity发布的EXE应用程序中动态改变分辨率大小

private void Update() { if (Input.GetKeyDown(KeyCode.Alpha1)) { Screen.SetResolution(200,200, false, 60); } if (Input.GetKeyDown(KeyCode.Alpha2)) ...

2018-12-11 13:35:14 1041

转载 Unity实现在IOS中进行GPS定位

在Unity中新建一个项目,进行如下设置:新建脚本文件,如下所示:using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class GPSTest : MonoBehaviour { string GetGps = ""...

2018-12-11 13:27:43 644

翻译 Unity中将高度图转换为Terrain

点击这里进行地理位置高度图的选择和下载。将下载的高度图导入Unity,新建C#脚本HeightmapFromTextureusing System.IO;using UnityEditor;using UnityEngine;public static class HeightmapFromTexture{ [MenuItem("Terrain/Heightmap From T...

2018-12-11 10:32:16 1130

原创 ASP.NET中的WebService应用及在Unity的WebGL中的使用

WebService用来提供数据给其他程序使用,与一般处理程序(ashx)功能类似,一般情况下,WebService主要用来为外部应用程序提供数据,如果是内部应用程序,则主要使用一般处理程序来完成。需要学习WebService的可以提前了解一下WCF。这里我们重点介绍下ASP.NET中WebService的使用。ASP.NET中WebService的创建在Visual Studio中创建...

2018-12-05 18:10:12 515 1

原创 ASP.NET网站中实现Ajax的跨域请求

什么是同源策略什么是跨域请求跨域请求的方法jsonpCROS其他方法window.name+iframewindow.postMessage()document.domainWebSocketNodejs中间件代理跨域nginx代理跨域跨域资源共享(CORS)postMessage跨域location.hash + iframe跨域document.domain + ...

2018-12-03 20:47:15 860

原创 IIS发布网站进行访问时提示权限不足的简单解决方法

一般情况下提示权限不足可能是因为网站所在的文件夹中用户权限设置问题,可以在该网站所在文件夹的安全设置中添加IIS_IUSRS以及IUSRS用户并为这两个用户赋值相应的权限即可。 ...

2018-09-06 11:23:40 2791

原创 Unity设置相机正交相机和透视相机的动态切换

在Unity的场景中通常用来渲染的相机使用的是透视相机,但是偶尔也需要使用正交相机来展示某些效果,如二维场景、城市天际线等,可以通过代码动态设置相机的呈现效果。正交视图不会根据物体距离相机的距离进行缩放,因此我们无法看到物体距离的远近,只能通过相互遮挡关系来判断。在Unity中UI的显示便是利用了类似正交相机的原理。 一些游戏也可以通过正交相机来实现2D效果。 可以通过设置相机的Proje...

2018-08-28 16:20:46 4526

原创 Unity中手动设置纵横比

在Unity中,我们一般不会手动设置屏幕的纵横比,Unity在运行过程中会通过计算自动设置纵横比,但是在一些特殊情况下需要对纵横比进行手动设置,比如我们显示的屏幕被被动压缩时(如在LED屏幕上设置多屏幕显示时,难免会对部分屏幕画面进行压缩显示,在电脑显示器上显示正常,但是在大屏幕上却被压缩),我们可以通过设置纵横比来改善被压缩的情况。 在Camera中有一个属性aspect,用于设置纵横比。...

2018-08-28 13:43:02 484

原创 Unity中不同平台快速切换

在项目开发过程中通常我们需要对不同的平台进行打包,当我们项目比较大时,平台之间的转化变得异常缓慢,浪费了大量的时间。在Unity中,我们的项目通常包含如下几个文件夹 我们的项目文件全部存放在Assets文件夹中,其中包含了我们整个项目运行所需的全部资产,如模型、贴图、材质、声音、视频等等,这些资产在导入时会生成对应的.meta文件,这些文件保存了资产之间的引用关系信息。 在Assets...

2018-08-09 16:45:14 4170

原创 Unity实现UGUI中按钮的单机、右击和中键点击的判定

直接上代码吧,把这个代码绑定到Unity的相应Button上即可实现。public class RightClick : MonoBehaviour, IPointerClickHandler{ public UnityEvent leftClick; public UnityEvent middleClick; public UnityEvent rightCli...

2018-05-03 14:37:58 3899 5

原创 Revit导出FBX,圆柱模型面数较多的解决方法

Revit导出FBX模型时,圆柱模型经常会出现面数较大的情况,当导入到其他模型处理软件时会出现各种问题,可以将Revit先导出到DWG文件,然后从DWG文件在再导入其他软件,可以有效解决圆柱形面数较多的问题。如果要使用Revit中模型的信息,一方面我们需要将Revit中模型的ID与模型进行绑定,另一方面,需要将Revit模型中的信息以数据库的形式保存下来。可以通过Revit导出DWF格式的...

2018-04-03 18:21:05 3535

原创 Unity开发Hololens应用,自动生成包裹物体大小的三维旋转和缩放边框

在开发Hololens应用时,可能会碰到需要实现物体旋转和缩放的功能,在制作物体旋转缩放控制块时,通过此方法可以快速创建与物体等大小的边框,减少部分工作量。 直接上代码using System.Collections;using System.Collections.Generic;using UnityEditor;using UnityEngine;public cla...

2018-03-01 15:36:47 1189 4

原创 Unity2017中Timeline的简单使用方法

Timeline是Unity2017版本中新加入的功能,可以非常方便的进行场景动画的创建和修改,包括物体、声音、粒子、动画、特效、自定义Playable以及子Timeline等多种资源进行整合,从而能够较方便的生成效果很棒的场景动画,同时可以通过Unity的Recorder资源包录制较为完整的视频并导出。 1.Timeline界面简单介绍在Unity2017中,点击Windo...

2018-02-27 22:36:25 40925 4

原创 Unity3D中在Inspector面板中显示复合属性信息(类属性/Struct属性)

在Unity3D开发过程中,我们可能会需要在Inspector中显示某些较复杂的数据类型

2017-09-12 19:28:51 5350

原创 IIS做文件服务器

在局域网内搭建文件服务器,可以通过IIS来实现。 1. 首先开通IIS服务,可参看上一篇文章第一部分和第四部分的内容。 2. 设置完网站后,打开目录浏览选项,启用该功能。 3. 打开MimeMap配置你需要下载的文件类型即可。

2017-08-24 23:49:27 1239

原创 Unity3D发布WebGL(网页)到IIS服务器并加入ASP.NET页面中

在Unity3D中发布WebGL,当我们需要将其加入我们自己的网站时,需要将WebGL的内容放入服务代码中。

2017-08-24 23:35:48 11072 2

原创 在Unity3D中更改FBX模型的中心点(Unity3D/3DMax)

当我们将模型导入到Unity3D中时,经常会遇到模型的中心点与物体中心点相差甚远的情况 这种情况通常会对我们的物体位置控制产生一些不利影响(当然这种设置也有其存在的好处……) 要解决类似问题,我们通常可以在Unity3D中进行设置。

2017-08-24 10:27:45 18177 1

原创 Unity在编辑器中通过代码更改Tag

在Unity的编辑器中,当我们有较多的Tag需要手动输入时,我们可以通过代码来简化此过程,同时也可以通过代码将我们的工程导入其他项目时来检查需要的Tag是否存在。同时,在AssetBundle导出的过程中,虽然模型中的Tag会被保留,但是其保存的仅仅是Tag列表中的一个顺序,而非真正的根据名称保存的。这就需要当我们在不同的项目中进行Bundle的导入导出时重点检查的部分,否则容易出现意想不到的结果。

2017-07-27 19:23:28 4718 2

原创 Unity3D中FindGameObjectsWithTag的排序问题

在Unity中,当我们的模型结构较为复杂时,通常我们会为某些层级的模型指定相应的Tag,当我们通过FindGameObjectsWithTag来找到我们想要的物体时,他们通常并不是按照在Hierarchy中的顺序来填充我们的数组,而是以一种随机的方式来完成。当我们需要对其进行排序时,可以借助GetSiblingIndex()来实现。

2017-07-27 19:16:57 1559

原创 Unity中AssetBundle的打包和加载

在Unity中,实现物体动态加载的方法主要包括了Resources.Load()和AssetBundle两种。当我们的游戏资源需要热更新时,AssetBundle是一种不错的实现方式。 Unity官方提供了十分方便的打包工具Asset Bundle Browser,同时该工具也作为开源项目放到了GitHub上。通过Window->AssetBundle Browser便可打开该工具进行相关操作。

2017-07-27 19:00:16 10914

原创 Unity3D导出WebGL与ASP.NET交互

当我们通过Unity发布WebGL时,通常会希望我们的Unity3D程序可以和网页中的元素进行交互,通过Unity内部的函数与网页端的方法交互实现数据的实时传递。 当我们把Unity发布出来时,通常会包含如下的文件: 在Build文件夹中包含了WebGL所有打包的内容,其中最重要的部分是UnityLoader.js和*.json这两个文件。 详细的介绍可以从官方的Interacting ...

2017-07-27 18:00:03 8568

原创 Unity中协程(IEnumerator)的使用方法介绍

在Unity中,一般的方法都是顺序执行的,一般的方法也都是在一帧中执行完毕的,当我们所写的方法需要耗费一定时间时,便会出现帧率下降,画面卡顿的现象。当我们调用一个方法想要让一个物体缓慢消失时,除了在Update中执行相关操作外,Unity还提供了更加便利的方法,这便是协程。

2017-07-25 21:01:37 54678

原创 WebGL在Firefox浏览器中已拦截跨源请求(CORS 头缺少)的解决方法(服务器为IIS)

首先我们需要打开控制面板->管理工具->IIS管理器,在其中点击我们的服务器,选择IIS中的HTTP响应标头,双击打开。 在HTTP响应标头中添加规则

2017-07-18 18:11:14 3907 2

转载 Chrome无法打开WebGL的解决方法

在用Chrome打开WebGL时无法打开的解决办法

2017-07-18 17:42:10 20451

转载 Unity3D中避免在点击UGUI的按钮时触发射线检测方法

在Unity3D中,我们经常需要通过射线检测对物体进行相关操作,但是常常会遇到当我们点击按钮时,射线检测同样会执行,为解决这种问题的困扰,我们需要判断该物体是否是给定的EventSystem对象。

2017-07-17 14:30:39 3553

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