自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 资源 (1)
  • 收藏
  • 关注

原创 Godot在多边形内随机获取点

我做了一个随机生成器,可以生成游戏道具,之前是矩形比较好算,随着关卡设计我需要多边形的生成方式。

2023-07-31 10:18:15 384

原创 GodotTween动画填坑

我在做动画的时候遇到一些问题感觉比较经典,比如动态添加Item到VBoxContainer的时候如果紧接着就播放动画,这时候其实Item的位置还没有更新,需要等待一帧才能播放动画。以下就是一些我遇到的问题和具体解决的思路方法。

2023-07-25 07:46:50 461

原创 Godot图片投影shader

原理是获取图像的A通道进行膨胀+高斯模糊+uv移动旋转这个例子没写很好随便写的,将就着用。

2023-06-16 16:08:07 275

原创 Godot4节点树右键菜单添加自定义选项

至此原理就讲完了,浪费了两天时间,提高了查看源码的能力。

2023-05-21 08:55:51 936 1

原创 Godot4 C++ 嵌入Opencv

使用GDExtension,可以很轻松的写godot4的c++插件,并且不需要编译引擎跟着做可以让你实现最基础的GDExtension工程。

2023-05-13 19:48:51 1064

原创 Godot内置PS功能

大概思路是Godot图片转字节数组,通过socket发送给python端,由python的opencv对字节数组转图片进行图像处理,传回Godot端。遇到的问题:socket发送大图会比较慢,也许可以尝试共享内存的方式。

2023-05-13 07:25:01 284

原创 Godot导入FBX自动生成Mesh资源文件

godot的3D粒子特效需要用到Mesh资源,但是导入OBJ会遇到无法保存材质的问题,我用的Godot3.5所以使用FBX导入,但是godot会直接把fbx文件变成场景文件,如果粒子系统需要使用的话还得手动从场景中找到模型并手动保存。这样感觉很麻烦,所以我就写了一个小插件,自动从fbx场景中提取第一个mesh,如果有需要也可以自行修改,主要是这个方法和思路。

2023-02-04 20:08:35 1348

原创 Godot根据遮罩图移动粒子

目前UI粒子特效unity引擎比较多,也好找资料,但是一般都是利用模型,使用3D粒子伪装2D效果。Godot中也可以做到这一点,并且Godot有专门的2D粒子系统,可以通过一张遮罩图对粒子的位置进行设置。

2023-01-23 20:37:50 1938

原创 Godot实现屏幕烟雾Shader

我改动了几处,godot引擎中没有mainImage函数,所以需要把改函数放进fragment函数中。并且对mainImage函数的定义进行了修改,比如void变成vec4。增加了两个变量,用于程序修改// 视口分辨率(像素)// 着色器回放时间(单位:秒)对一些变量写上了const以及修改重名函数mod289_最后放出效果。

2023-01-18 19:36:36 434

原创 Godot实现蝴蝶飞舞Shader

学习到了一些基础的Shader知识,明白了纯Shader只能处理一些简单的操作,想这种比较复杂的3D效果最好采用3D粒子的方式实现。

2023-01-18 18:55:03 2146

原创 Shader踩坑笔记UV操作

相加以后在叠加Y方向本来的值就得到了想要的效果,假如你有一张半边蝴蝶翅膀,可以复制出来一个完整的蝴蝶。那么2~3的部分减去2就变成了0~1,所以就还原了之前的uv。使用step函数替代if操作可以更好发挥GPU的计算优势。2、iResolution我自定义的变量,输入画布尺寸。保存y方向的值,只对x方向进行操作最后需要加上y方向。其中_uv_left和_uv_right的图片为上图。这个函数我参考UE4引擎的算法,可以对UV进行旋转。0~1的UV乘以一个数n,变成0~n。上面六介绍了uv复制的原理。

2023-01-14 16:54:16 1330

原创 SDL_Image STB_Image 中文路径

C++中字符串可以用char*来表示,也可以用wchar_t来表示。由于中文字符占两个字节(不确定对不对),所以中文推荐采用wchar_t。wchar_t* file = L"你好";注意:wchar_t的字符串要加大写L。wchar_t - 百度百科以上这个操作是将unicode编码的wchar_t转为了char的utf8,至于能不能使用则需要看情况。因为有可能你的char本身就是unicode编码,虽然打断点看到乱码字符但是能用。这个编码转换还需要加深理解。

2022-08-24 16:27:19 550

原创 stb_image使用说明

我最近在用vulkan来显示图片,需要用到这个库。

2022-08-17 20:04:22 3484

原创 PyBind11踩坑笔记

PyBind11可以让C++快速和Python进行绑定,有如下情况可以使用1、我需要使用c++给python写库(打包pyd)2、我的c++程序需要内嵌python(打包exe)首先需要明确依赖项,以下是CMake脚本解释一下,pybind可以通过pip来安装,并且依赖python的头文件另外还需要手动把相关的dll放到exe目录python310.dllpython3.dll如果你想把dll文件放到Bin目录里或其他目录,需要设置系统的环境变量PATH。...

2022-07-31 22:30:40 1936

原创 SDL2 Opengl遇到的坑

新手使用SDL2的时候创建了SDL_Renderer渲染器默认SDL2Renderer好像是使用的D3D(不敢肯定)相对应的显示函数是SDL_RenderPresent()那么我们opengl对应的显示函数是SDL_GL_SwapWindow()经过测试,以上这俩函数都能正常显示,但不能一起用,否则会闪烁坑1SDL_RenderClear函数的使用用SDL默认的渲染器时调用清除函数没问题使用opengl以后调用这个会把画面清除掉,小心使用。......

2022-07-25 08:53:58 878

原创 VS设置导出目录

打开属性页面1、配置属性->常规->输出目录这里修改的是exe的生成目录2、配置属性->常规->目标文件名这里修改的是exe的名字3、配置属性->调试->命令这里修改的是运行时vs去哪里找exe4、配置属性->调试->工作目录如果你有很多dll感觉太乱,需要放在子目录也许可以试试这个5、配置属性->链接器->常规->输出文件这里修改的是exe的生成目录,需要加上exe的名字如a.exe6、配置属性->链接器->调试->生成程序数据库文件这里是pdb文件,没啥用可以改掉,这样生成目录清爽一些7、配置属性->链

2022-07-12 07:47:32 2217

原创 Scons编译IMGUI

1、安装python2、通过pip安装scons3、安装CmakeCMakehttps://cmake.org/注意安装时勾选环境变量,这里不多赘述4、 下载GLFW源码版并编译Download | GLFWhttps://www.glfw.org/download.html 要用cmake自己编译的,官方自己编译的版本scons没法用会报错无法解析的外部符号__imp_realloc之类的 编译glfw的过程参考这篇文章解决 glfw3.lib(input.obj) : error LNK2019:

2022-06-09 10:52:35 354

原创 UE4常见问题汇总

UE4 VS 系统找不到指定的文件可以解决方案右键设置启动项Set as Startup ProjectUE4输出中文乱码VS卸载中文语言包安装英文语言包UE4C++项目打包弹出网页因为安装了VS2022,需要卸载重新安装VS2019UE4编译太卡可以把UE4和VS安装在固态硬盘,以及工程。这样速度能快好几倍.........

2022-05-31 07:20:01 1870

原创 Godot入门遇到的一些问题汇总

动态添加场景1.func_ready():2.foriinrange(50):3.addIconsButton()4.5.6.funcaddIconsButton():7.#添加自定义图标按钮8.varicon=preload("res://IconsButton.tscn").instance()9.self.add_child(icon)UDP接受消息1.varpeer...

2022-05-28 15:14:17 2002

原创 GoDot引擎打包安卓

首先去官网下载godot引擎,这里推荐稳定版而不是最新版Godot Engine - Free and open source 2D and 3D game engine下载好以后可以看到exe与cmd文件,这里随便点哪个都行然后创建工程打开进入以后先创建一些内容,然后保存场景,并运行一次因为如果不运行的话可能不会设置默认地图,导致游戏闪退项目设置里设置默认地图编辑器设置里,添加相应的安卓SDK路径和证书文件,以及证书别名和证书秘钥注意:如果你没有下载导出模板..

2022-05-22 14:34:15 2417

原创 个人代码自动更新 码云 github

我们自己写的开源代码想要实现自动更新的功能,又没有自己的服务器所以需要软件自己从网上查找最新版本并下载首先说一下github的实现方法首先发送一个get请求获得所有版本https://api.github.com/repos/gaoyan2659365465/pyhoudini/releases其中gaoyan2659365465是我的github用户名pyhoudini是我的仓库名你会得到一些返回信息,告诉你这个仓库里面具体有哪些版本https://api.gith

2022-04-30 08:03:38 637

原创 Houdini VEX 制作楼梯

for(int i=0; i<10; i++){ vector pos = {0,0,0}; pos = set(i,i,0); addpoint(0,pos);}Detail层级,为了创建一排点vector pos = {0,0,0};pos = set(@P.x,@P.y+1,@P.z);if(@ptnum != @numpt-1){ int p0 = addpoint(0, pos);}Points层级,为了在这排点的上方创...

2022-03-26 09:54:08 544

原创 Django POST 500错误

NOT NULL约束失败:auth_user.password - 我爱学习网 (5axxw.com)django.db.utils.IntegrityError: NOT NULL constraint failed: auth_user.password因为我post传的key是Password,但是django那边接收的是password,所以找不到。。。解决办法是改成一致也有可能是用户名已存在...

2022-03-10 20:27:43 1083

原创 PySide PyQt 图标模糊

做了一个搜索条参考:(4条消息) Qt 之自定义搜索框_青春不老,奋斗不止!-CSDN博客_qt搜索框里面的第一种方法会出现图标模糊的情况,然后采用第二种方法成功解决!这里有一个图标模糊的文章可以看一下:Qt图标显示模糊原因及解决方法 (huyaohui.com)self.line_edit = QLineEdit(self) self.line_edit.setFixedHeight(self.selectheight) self.l..

2022-03-01 10:36:55 620

原创 Houdini PySide窗口加载越来越慢

由于某种不为人知的原因,导致我做的houdini插件界面打开越来越慢第一次瞬间打开,后面甚至能到30多秒,这显然是不正常的我之前是一直用from imp import reload来重载模块,因为houdini好像会保留之前加载过一遍的模块。为了解决这个越来越慢的bug,你需要在你的py文件里面创建界面比如a = jj()然后在houdini的工具栏里面显示出来比如a.show()这样就不会每次重新加载了,而是一直使用第一次加载的那个界面,打开速度提高了,并且修复了越来越慢的bu

2022-02-27 20:37:08 561

原创 Houdini制作pyside2插件崩溃原因

工具架添加新工具,把自己写的python界面代码导入进去主要是sys添加环境路径,使得houdini可以找到我们的插件然后reload是重新加载模块,这样就不需要每次都重新启动houdini查看结果了,其实不加也行我注释掉的地方也就是show显示窗口,虽然能显示,但有个bug,如果houdini刚打开直接点击插件会闪退,不知道为什么,如果打开等待10秒以后再点插件就不会闪退。。。经过测试,把show显示窗口的函数放进模块py文件里,而不是上面的界面里,这样可以避免窗口闪退的bug

2022-02-14 21:55:26 908

原创 PyQt5 PySide2嵌入网页播放视频

from PySide2.QtWidgets import *from PySide2.QtCore import *from PySide2.QtGui import *from PySide2.QtWebEngineWidgets import QWebEngineViewfrom PySide2.QtWebEngineWidgets import QWebEngineSettingsimport osclass WebWidget(QMainWindow): def __ini.

2022-02-10 17:43:27 1512 1

原创 Houdini工程文件合集

分享一些资源网站,Houdini初学者容易找不到例子学习od|force forumscgwikiHoudini - cgwiki​​​​​​Tutorials — CASKALContent Library | SideFX另外想要Houdini海量教程的同学可以留邮箱

2022-02-08 21:18:37 2024 6

原创 Houdini保存自定义节点

很多时候我们希望把自己写的Houdini节点记录下来,方便其他工程使用。首先要选择节点们,点击上图工具栏的纸盒子图标,相当于一个文件夹。然后我们要保存为HDA格式,看下图这里随便存地方,但是名字有要求,必须开头字母如果你想加载的话可以从下面加载:可以点击Install and Create把之前写的节点添加到新工程里。下面补充一些如何给节点添加属性,点击这个齿轮按钮,然后进入从这个页面就可以自定义你的节点参数了,是不是很方便呢~...

2022-02-04 16:54:39 1596 1

原创 Houdini生成地图算法

vector createPoint(int i;vector pos){ int pt0 = addpoint(i, pos); return pos;}vector aa = {0,0,0};for(int i=0;i<1000000;i++){ //aa = createPoint(i,aa); int pt0 = addpoint(i, aa); //int prim0 = addprim(i, "poly"); float r = r.

2022-01-30 23:11:02 821

原创 UE4seq过场动画混合到玩家视角

UE4: Smoothly Transitioning Between Gameplay & Sequencer Cutscenes · SteveStreeting.com相机切换,右键,可混合勾上然后鼠标悬浮到右边轨道,发现一个小三角(很隐蔽)拖动三角就能看到曲线了

2022-01-06 09:36:49 619

原创 动作捕捉和面部捕捉解决

首先说面部捕捉iphone结合LiveLinkFacehttps://www.bilibili.com/video/BV1LV411r7Sk优点:免费,效果最好缺点:需要苹果手机安卓结合LiveLinkhttps://www.bilibili.com/video/BV1u34y1r7mFGitHub - justdark/UE_Android_LiveLink: an android alternative implementation for unreal face live

2021-12-30 09:26:41 6936 2

原创 Houdini 找不到wfc节点

安装Houdini默认是不包括实验工具包的需要手动更新一下没有这个标签页可以点加号然后默认只有第一个更新一下就好了

2021-12-27 22:12:23 710

原创 UE5 c++ 写一个livelink插件

用于面部捕捉,以下是大佬的解决方案,亲测好用虚幻引擎live link face 安卓解决方案-unreal ue4 live link face for android_哔哩哔哩_bilibiliy下面是大佬的源码开源https://github.com/justdark/UE_Android_LiveLink这玩意网上很少有参考,这份代码来之不易呀~具体怎么写还要靠你自己去看代码,起码有了正确的方向就成功了一半我之前是用的tcp socket那个插件传递数据的,其实也

2021-12-23 16:23:26 5257

原创 UE5 C++加载CSV文件

// Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreMinimal.h"#include "Engine/DataTable.h"#include "Kismet/BlueprintFunctionLibrary.h"#include "LoadCsvFile.generated.h"USTRUCT(BlueprintType).

2021-12-23 16:18:37 2506

原创 UE5新建动画蓝图节点

巨坑无比,东西比较杂,凑合看吧这是我的目录结构,分为俩模块,一个伴随打包,一个只在编辑器阶段存在"Modules": [ { "Name": "AnimCsv", "Type": "Runtime", "LoadingPhase": "PreDefault" }, { "Name": "AnimCsvEditor", "Type": "UncookedOnly", "LoadingPhase": "PreDefault" } ]..

2021-12-23 16:13:39 3786 1

原创 UE5导入第三方动态链接库dll

Build.cs文件里面加上"Projects"模块,要不然报错// Copyright Epic Games, Inc. All Rights Reserved.#pragma once#include "CoreMinimal.h"#include "Modules/ModuleManager.h"class FOpenFacePlusModule : public IModuleInterface{public: /** IModuleInterface implement

2021-12-23 15:42:47 5370 4

原创 C++调用python

新建个PyCpp.cpp#include <iostream>#include <Python.h>#include "utf8.h"using namespace std;static int numargs = 0;/* Return the number of arguments of the application command line */static PyObject* emb_numargs(PyObject* self, PyObject*

2021-12-23 15:02:19 176

原创 C++ Socket消息发给python中文

#include <stdio.h> #include <Winsock2.h> #pragma comment(lib,"ws2_32.lib")#pragma warning(disable:4996)#include <iostream>int main(){ WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD(1, 1); e.

2021-12-21 17:03:34 249

原创 C++构造一个int argc, char** argv

我们的main函数一般是这种参数int fack_argc = 7 ; char arg0[] = "D:\\Cartoon\\BuildDemo\\Plugins\\OpenFacePlus\\Binaries\\ThirdParty\\" ; char arg1[] = "-device" ; char arg2[] = "0" ; char arg3[] = "-mloc" ; char arg4[] = "D:\\Cartoon\\BuildDemo\\Plugins\\Open

2021-12-21 15:39:52 820

Unity最强状态机插件2020最新 Playmaker1.9.0p15

艺术家和设计师:不用编码就能实现你的创造性愿景!开启团结的力量。程序员:向工具箱中添加一个强大的可视化状态机编辑器。与脚本接口或使用自定义操作扩展播放器。 :: 新的2018.3中嵌套的预置支持 :: 新的集成UI操作和事件。 :: 新的动作中的自动转换变量。 :: 新的业绩改善。 :: 新的行动的分类图标。 :: 新的最爱和最近的行动。 :: 新的新的行动属性。 *在直观的图形视图中构建行为。 *拖放操作-没有语法错误! *通过复制/粘贴和模板节省时间。 *访问脚本和第三方插件。 *享受强大的运行时调试: *观察国家、变量和事件。 *暂停和倒带调试流的时间。 *下载流行插件的动作包: *Ng

2020-04-29

空空如也

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

TA关注的人

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