自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (6)
  • 收藏
  • 关注

原创 Unity通过XXpermission插件获取MANAGE_EXTERNAL_STORAGE权限

最近公司准备用Unity做一个安卓端的文件管理器功能,文件管理器已经做完了。刚开始的时候想要申请一下所有文件权限,发现在Unity里面申请所有文件权限(android.permission.MANAGE_EXTERNAL_STORAGE)相对来说比较麻烦。所以准备写一下文章记录一下如何申请到所有文件权限的。在网上找到一个安卓使用的比较方便的插件叫XXPermissions,申请权限的界面也封装好了的。大家假如安卓功底够好的话,可以直接看这个仓库的readme。根据仓库的readme配置好相关文件。

2024-02-26 19:57:38 595

原创 Unity直接调用java代码(不打jar包)

从Unity2018.2版本以后,Unity已经可以直接编译 .cpp、.a、.java 文件作为 插件 在Unity程序中使用了,可以节省下使用VS、AS、XCode进行插件开发的导出调试的步骤,十分方便。今天从网上浏览文章,发现Unity出了个功能,在Unity中可以直接丢java文件到Unity的Plugin文件夹下,就可以直接调用。以后可以省去很多时间,可以减少打jar包的需求了。代码是抄的,为了防止连接失效特做记录。准备一个.JAVA插件的源文件。

2023-10-26 20:29:53 658

原创 Unity 通过jar包形式接入讯飞星火SDK

最近工作上遇到了要接入gpt相关内容的需求,简单实现了一个安卓端接入讯飞星火的UnitySDK。或者也可以接入WebSocket接口的。本文只讲安卓实现我使用的Unity版本为2021.3.27f1c2Android版本为4.2.2。

2023-10-23 15:14:58 664

原创 Unity 请求安卓权限并拿到回调

Unity请求安卓权限并且拿到回调的jar包封装

2022-10-15 12:55:57 1502

原创 Unreal Engine学习(UActor相关)

UActor相关的UPROPERTY记录只让成员变量可见不允许编辑不能修改变量的值,Category用于在编辑器或者蓝图编辑器中分类UPROPERTY(VisibleAnywhere,Category="My Actor Components")让成员变量只能在关卡编辑器里编辑,不允许在蓝图编辑器中编辑UPROPERTY(EditInstanceOnly,Category="My Actor Properties | Vector")让成员变量只能在关卡编辑器里可见,不允许编辑UPROPERTY

2022-06-06 11:37:51 151

原创 Unreal Engine学习 (Object相关)

最近由于工作原因可能会用到unreal所以抽时间学习了一下。顺便做一下记录。①创建脚本继承Object类自己任意取名字。②双击打开脚本③在Cpp文件中输入如下Hello World代码,点击编辑器中compile按钮#include "MyBluePrint.h"void UMyBluePrint::MyFunction(){ UE_LOG(LogTemp, Log, TEXT("Hello World !")); UE_LOG(LogTemp, Warning, TEXT("H

2021-06-24 19:23:57 227

原创 C++学习(引用)

引用的基本使用 作用:给变量起别名语法:数据类型 &别名=原名 引用必须初始化,且初始化之后值不能改变 引用可以用来做函数参数,利用引用让形参修饰实参,可以简化指数修改实参void swap(int &p,int &p2){ int temp = p; p = p2; p2 = temp;}但是和指针一样,不要用引用来做返回值(除非是全局区(static)的)。会有相同的问题会发生。引用函数可以用来做左值,代码如下int& func(){

2021-06-02 16:56:41 127

原创 C++学习(内存分区模型)

C++在执行时,内存大方向划分为四个区域在程序编译后,生成了exe可执行程序,未执行该程序前分为两个区域:代码区和全局区代码区存放CPU执行的机器指令代码区是共享的,共享的目的是对于频繁执行的程序,只需要在内存中有一份代码即可代码区是只读的,使其只读的原因是防止程序意外地修改他的指令全局区:全局变量和静态变量(static)都存放在此全局区还包含了常量区,字符串常量和其他常量(const修饰的全局变量)都存于此。该区域的数据在程序结束后由操作系统释放。栈区:由编译器自动分配释放,存放函

2021-06-02 16:21:59 89 1

原创 C++学习笔记(指针相关)

空指针: int *p = NULL;用途:初始化指针变量注意:空指针指向的内存是不可以访问的,需要访问需要先初始化(指向另一个地址)野指针: 指针变量指向非法的空间常量指针:特点:指针的指向可以修改,指针指向的值不能修改下面展示一些int const *p=&a;*p = 20; //错误,不可以修改值*p=&b;//正确·指针常量:int * const p=&a;特点:和常量指针相反Const既修饰指针又修饰常量:const int * const

2021-06-02 14:57:40 43

原创 C# Socket关于TCP粘包的处理方法

最近在工作中遇到了要自己写Socket服务器和客户端的问题,我解决了关于TCP的粘包问题。那么为什么会引起TCP粘包呢原因有以下两点1、TCP是基于字节流的,虽然应用层和传输层之间的数据交互是大小不等的数据块,但是TCP把这些数据块仅仅看成一连串无结构的字节流,没有边界;2、在TCP的首部没有表示数据长度的字段,基于上面两点,在使用TCP传输数据时,才有粘包或者拆包现象发生的可能假如没有做处理的话,发过来的数据包会有三种情况1.没有粘包(这个问题不讨论,是正常情况)2.两个或多个整包粘在一起3.

2021-05-12 15:05:31 2940 9

原创 《EffectIve C# : 改善C#代码的50个有效方法读后感》(C#语言的编程习惯)

1.优先使用隐式类型(var)的局部变量,var的意义在于,你不用把变量的类型告诉编译器,编译器会替你自动判断。但是这个var会需要名字定义精确。不然会让别的开发者产生歧义。2.优先使用readonly而不是const,const会直接在程序集中直接嵌入该常量。如不重新编译引用该程序集const的应用,const会保持不变。const不会引用空间,而readlyonly会。3.尽量使用as和is,少用强制类型转换。因为强制类型转换遇到null时会因为无法转换而报错,而as转换时遇到null时会转换为nu

2021-03-19 20:22:24 176

原创 Unity端接入讯飞语音识别的离线命令词识别(二)

上章我们讲了在AndroidStudio里跑讯飞原生的demo。这章我们来将这个在Unity中跑起来。因为我们跑的是离线命令词识别功能所以这些脚本都是其他功能使用的,不用管他,直接删掉就行了。大家看清楚这段代码,这段代码的意思是将你讯飞平台上的appid注册到应用中去。就是上一张我同样涂红的那部分。这里的代码可以复制过来。在unity中初始化离线命令词识别的时候可以用。注释掉后面的继承,这里继承是为了安卓端能够点击,在Unity里没用。同样的create方法在也是安卓的生命周期,我们在Un

2020-05-23 16:31:32 2507 13

原创 Unity端接入讯飞语音识别的离线命令词识别(一)

最近公司的设备需要支持语音识别输入,公司的算法也没有特别好的解决方案。所以我们找了讯飞的库来接入来实现语音识别的离线命令词识别。离线命令词识别是什么呢?就是把你需要识别的语音预先置入程序中讯飞的安卓SDK里自带了一个bnf文件名字叫做call.bnf。这个文件起到了构建语法的作用。下面我来讲怎么把讯飞的demo应用跑起来。......

2020-05-23 14:32:58 2380

原创 Unity 安卓端推流工具整理

推流工具技术整理1.环境搭建: 软件版本:Android Studio 3.4.2下载地址:http://www.android-studio.org/NDK版本:android-ndk-r10e下载地址:https://developer.android.google.cn/ndk/downloads/NDK下载到本地之后需要在Android Studio上配置一下地址,将N...

2019-12-27 10:24:58 1406 2

原创 HoloLens眼镜端的Socket客户端发送和接受消息

最近好久没有写博客了,因为最近出差比较多,下面就是眼睛端Socket通信的代码,眼镜端比较特殊,系统用的是UWP的系统,好多一些Socket语法在眼镜端都没办法兼容,我在网上找了比较久才找到教程。废话不多说,下面就是代码using System;using UnityEngine;using System.IO;using System.Text;using System.Thread...

2019-09-29 12:22:05 1685 13

原创 C#protobuf3的序列化和反序列化和protobuf3转换cs文件的小工具

C#protobuf3的序列化和反序列化和protobuf3转换cs文件的小工具

2019-07-23 17:41:23 5597 2

原创 HoloLens MRVC

以下是官方源码地址:https://github.com/danilogr/MixedRealityCompanionKit/tree/master/MixedRemoteViewCompositor/Source1.更改配置表编译文件如果不想看详细的配置过程的话就直接移步步骤2,直接试用一下工程由于平时项目中用到的Windows SDK版本不同,这次我们要编译18362的版本来适配工程...

2019-07-09 17:00:42 304 2

原创 lua的使用说明

1.unpackfunction nonils(…)local arg =table.pack(…)for i=1,arg.n doif(arg[i]==nil) thenreturn falseendreturn trueendtable.pack(…)是自动将函数的可变参转换为一个表,但是这个表保存了参数个数的额外字段"n"2.unpack还有table.unpack()...

2019-06-11 23:42:26 419

原创 lua程序的小Tips 2(函数返回值的问题)

以下是Tips列表# lua程序的小Tips 1(索引的问题)上一篇我们讲述了lua的索引问题这次我们来讲述lua的函数返回值的Tips当一个函数有多个返回值时函数的调用是一系列表达式中最后一个(或者是唯一)一个表达式时才能返回多表达式的结果,否则只能返回一个结果例如function foo() return “a”,“b” end --不返回结果x,y,z=20,foo() 输出...

2019-06-09 10:08:14 213

原创 lua程序的小Tips 1(索引的问题)

Tip 1(索引的问题)我们在调用lua表索引时经常会出现问题,下面我讲述了lua索引引用的问题sunday="monday"; monday="sunday";t={sunday="monday",[sunday]=monday}print(t.sunday,t[sunday],t[t.sunday]) 输出为monday,sunday,sundayt.sunday相当于t...

2019-06-09 10:02:57 250

原创 C# byte[]数据的校验

//长度大于200的话就需要进行压缩 bool needCompress=AllMessage.Length> CompressLength; //进行压缩 if(needCompress) { AllMessage= ZlibHelper.compressBytes(AllMessage); }...

2019-04-25 22:51:03 1623

原创 C# AVL树实现

public class Node { public Node Parent; public Node LeftTree; public Node RigthTree; public int data; public bool IsDelete; public int BalanceV...

2019-04-06 14:03:50 605

原创 C#二叉查找树实现

public class BinarySerachTree { private TreeNode HeadNode; public BinarySerachTree(TreeNode headNode) { HeadNode = headNode; } #region 插入查找二叉树...

2019-03-31 23:15:54 185

原创 C# 单链表

以下是要实现链表的一个单个Nodepublic class WNode{ public object data; public WNode Next; public WNode() { data = null; Next = null; } public WNode(object data, WNode ne...

2019-03-30 23:23:06 614

原创 C#散列表(Hash表的理解,解决哈希冲突)

散列是一种常见的储存数据的技术,采用这种计算可以非常迅速的插入和检索数据。散列所采用的数据结构被称位是散列表。但是查找最大值或者最小值这样的查找操作,散列表无法执行的非常快。散列表容量最好的容量大小为质数,因为这样在取余求哈希值的时候可以减小哈希冲突。一般求字符的散列值都是使用霍纳法则来进行求值。霍纳法则也叫秦九韶算法,西方称为霍纳法则.将字符转换成ASCII码的键值来得到哈希值。 ...

2019-03-29 21:17:09 3662

原创 C#通过埃拉托斯特尼筛法实例来理解BitArray

static void Main(string[] args) { int[] array = new int[100]; for (int i = 0; i < array.Length; i++) { array[i] = 1; } #...

2019-03-25 23:50:20 276

原创 C#下Queue的实现及其解决实例(队列解决排序问题----不需要逻辑运算符来进行比较)

自己实现了队列的功能,并通过队列进行排序的方法,具体解释明天再来补充,今天有点太晚了。using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;public class WQueue<T>{ //队列中储存数据的个数 ...

2019-03-25 01:27:19 1100

原创 C#下Stack的实现及其解决实例(栈解决判断字符串是否回文)

这几天在看一些数据结构方面的书,自己总结了一下栈的实现方式,通过栈解决了回文的判断,如果有错的话大家在评论里指出来。 public class WStack<T> { //储存数据的数组 private T[] StoreArray; //当前栈中储存数据数量 private int m_Count; ...

2019-03-24 19:13:56 505

原创 C#下的时间测试(用于计算方法执行时间)

public class Timing { private TimeSpan m_StartTime; private TimeSpan duringTime; public Timing() //构造函数用于初始化开始时间和持续时间 { this.m_StartTime = new Time...

2019-03-21 22:32:25 598

原创 Socket通信Unity与控制台(prorobuf数据)

这次我们通过protobuf数据来和服务器交换数据废话不多说,直接上注释完的代码,由于服务器和客户端代码相似点很多我只在控制台部分加了代码,如果有错的话大家在评论区回复我.关键代码如下using System;using System.Collections.Generic;using System.Linq;using System.Net.Sockets;using System...

2019-03-07 00:16:59 337

原创 Asp.net搭建WebServer服务器

配置环境打开控制面板之后选中这几个然后点击确定2 程序(VS要安装ASP.net)创建web项目起名叫WebAccount放置在D盘根目录下,在Controllers目录下创建api文件夹主要是用来放置api,在此文件夹下面添加一个打开IIS管理器右键添加网站还有最后一步就添加成功了双击目录浏览,打开启用最后在浏览器上测试这样就成功了...

2019-03-01 23:14:13 2387

原创 Unity资源的优化

①:模型的优化同一个场景的模型,应该尽量公用同一贴图,一个场景的贴图数量控制在十个左右,越少越好,把琐碎的小图合并成几张1024*1024的大图,这样做的目的是减少SetPass Calls,贴图禁止使用dds(ios平台下不支持)格式图片,贴图名称只能是:英文字母数字下划线模型减面:如果看不见的面要机会删掉。但不要把本应该看见的面删掉。场景同屏面数控制在8000以内。模型导出:模型导出前,...

2019-02-27 22:10:20 425

原创 Unity的小地图功能的制作

今天我们来讲一下小地图的制作首先在场景里创建一个Cube,坐标设置为然后创建一个plane作为地面设置坐标点为创建另一个Cube作为前面创建的Cube的子物体并改成红色位置位置和缩放为②创建一个image设置锚点为左上角再创建一个image为其子物体然后我找了一张箭头的图片切换为sprite给这个image赋值using UnityEngine;using UnityEng...

2019-02-27 00:27:04 1439

转载 将.xls表格数据通过protobuf进行序列化,并在Unity中使用

转载:protobuf 导excel表格数据protobuf 导excel表格数据2看了这两个大佬的文章我把这个工程试用完成了放在github上面供大家使用,不过都是没有配置过的,大家自行配置。...

2019-02-26 00:27:16 765

原创 C# socket异步通信服务器和客户端

服务器代码 只要客户端连接进来就会接收到Server received datausing System;using System.Text;using System.Net.Sockets;using System.Net;class Program{ /// &amp;amp;amp;amp;lt;summary&amp;amp;amp;amp;gt; /// 缓存接受的数据的byte数组 /// &amp;amp;amp;amp;lt;/s

2019-02-25 21:10:15 610

原创 protobuf文件编辑规则

protobuf文件必须以以下结构来书写限定修饰符 数据类型 字段名称 = 字段默认值例如 :optional(限定修饰符) string(数据类型) account(名称) = 1(默认值);①限定修饰符:①限定修饰符:限定修饰符包含 required\optional\repeatedRequired: 表示是一个必须字段,必须相对于发送方,在发送消息之前必须设置该字段...

2019-02-25 01:20:54 839

原创 Unity当中使用Protobuf-net进行序列化和反序列化

probuffer-net可以在https://code.google.com/p/protobuf-net/downloads/list下载(需翻墙)或者我创建了一个百度云网盘大家可以下载链接:https://pan.baidu.com/s/10CAXDvarJIAxj1faquh0CQ 提取码:e43l首先我们要创建一个Test.proto文件来进行测试message ReqLogin ...

2019-02-24 10:33:25 1897

UGUI HUD Text

UGUI HUD Text

2019-03-31

T4m+for+unity5.6.2

T4m+for+unity5.6.2

2019-03-31

FingerGestures+v3.1

FingerGestures+v3.1

2019-03-31

Mesh Baker

Mesh Baker3.7.2

2019-03-31

Shader Weaver 1.22

Shader Weaver 1.22

2019-03-31

AVPro Video1.7.4

AVPro Video1.7.4

2019-02-27

空空如也

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

TA关注的人

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