草庐IT

Unity Sprite 切割图集并且获得任一子图(sprite/Texture)

首先,Unity中的SpriteEditor可以将一张大图切割成多个sprite。然而如果想要从这么多切割好的子sprite获取某一个sprite要如何操作呢?本篇文章总结了两个方法以获取图集中的某个子图。一.切割图集这一步,使用Unity的SpriteEditor切割你的图集,如果不会使用SpriteEditor请参考这篇文章:Unity的2D图集处理,并切割出一张张小图片_0完美对称0的博客-CSDN博客_unity裁剪图片在我们找资源的时候,有时候会遇到那种把一堆图片放进一张png图片里面的情况,在做2D游戏的时候,我们往往需要将里面的一块块小图片切割出来使用,那么问题就来了,怎么切割呢

【论文阅读】GET3D: A Generative Model of High Quality 3D Textured Shapes Learned from Images

文献出处1背景创建3D虚拟世界与内容创建工具的需求变得强烈。过去的许多工作缺乏3D几何细节、受限于可以生成的网络拓扑、不支持纹理、在合成过程中使用神经渲染器,因此在3D软件中的使用变得不平凡。2研究问题训练合成纹理网格的3D生成模型,可以被3D渲染引擎消耗,用于下游应用。完成上述所有需求。3研究思路将可微显式表面提取建模方法、可微渲染技术,2D生成对抗网络结合起来,从2D图像集合来训练模型。可微显式表面提取建模方法:直接优化和输出具有任意拓扑的纹理3D网格。可微渲染技术:用2D图像渲染模型,从而利用为2D图像合成开发的强大而成熟的鉴别器。综上两条,就可以轻松扩展模型以训练高达1024×1024

【论文阅读】GET3D: A Generative Model of High Quality 3D Textured Shapes Learned from Images

文献出处1背景创建3D虚拟世界与内容创建工具的需求变得强烈。过去的许多工作缺乏3D几何细节、受限于可以生成的网络拓扑、不支持纹理、在合成过程中使用神经渲染器,因此在3D软件中的使用变得不平凡。2研究问题训练合成纹理网格的3D生成模型,可以被3D渲染引擎消耗,用于下游应用。完成上述所有需求。3研究思路将可微显式表面提取建模方法、可微渲染技术,2D生成对抗网络结合起来,从2D图像集合来训练模型。可微显式表面提取建模方法:直接优化和输出具有任意拓扑的纹理3D网格。可微渲染技术:用2D图像渲染模型,从而利用为2D图像合成开发的强大而成熟的鉴别器。综上两条,就可以轻松扩展模型以训练高达1024×1024

【Unity】OpenCV Plus Unity 获取Unity中摄像机并调用opencv使其灰度化实例

前言OpenCVPlusUnity有关的教程实在很难找到,Opencv的有很多,但是在Unity上应用的相关教程很少,比如付费的OpenCVForUnity,就已经很少了,目前经济有限,只能选择更加小众的OpenCVPlusUnity国内甚至搜不到相关的概念,更别提学习教程了。真的就是纯靠自己一点点摸索尝试出来的。很不容易,不过成功之后也是成就感满满。其OpenCV的写法和C++版本的差不太多,也有些许不同之处,可以参考OpenCVforUnity的语法格式写,并在写的过程看函数的参数说明。1、导入OpenCVPlusUnity包2、创建摄像机纹理创建摄像机纹理并将其拖放到需要读取的摄像机上边

【Unity】OpenCV Plus Unity 获取Unity中摄像机并调用opencv使其灰度化实例

前言OpenCVPlusUnity有关的教程实在很难找到,Opencv的有很多,但是在Unity上应用的相关教程很少,比如付费的OpenCVForUnity,就已经很少了,目前经济有限,只能选择更加小众的OpenCVPlusUnity国内甚至搜不到相关的概念,更别提学习教程了。真的就是纯靠自己一点点摸索尝试出来的。很不容易,不过成功之后也是成就感满满。其OpenCV的写法和C++版本的差不太多,也有些许不同之处,可以参考OpenCVforUnity的语法格式写,并在写的过程看函数的参数说明。1、导入OpenCVPlusUnity包2、创建摄像机纹理创建摄像机纹理并将其拖放到需要读取的摄像机上边

[CG从零开始] 6. 加载一个柴犬模型学习UV贴图

在第5篇文章中,我们成功加载了fbx模型,并且做了MVP变换,将立方体按照透视投影渲染了出来。但是当时只是随机给顶点颜色,并且默认fbx文件里只有一个mesh,这次我们来加载一个柴犬模型,并且给模型贴图,模型可以从sketchfab下载。本文没有涉及到理论解释,更多的是代码实践。完整代码在https://github.com/MangoWAY/CGLearner/tree/v0.3tagv0.31.创建纹理,加载图片我们来封装一个Texture类用来加载图片,创建、bind纹理,加载图片我用的是pillow库。fromOpenGLimportGLasglfromPILimportImageim

[CG从零开始] 6. 加载一个柴犬模型学习UV贴图

在第5篇文章中,我们成功加载了fbx模型,并且做了MVP变换,将立方体按照透视投影渲染了出来。但是当时只是随机给顶点颜色,并且默认fbx文件里只有一个mesh,这次我们来加载一个柴犬模型,并且给模型贴图,模型可以从sketchfab下载。本文没有涉及到理论解释,更多的是代码实践。完整代码在https://github.com/MangoWAY/CGLearner/tree/v0.3tagv0.31.创建纹理,加载图片我们来封装一个Texture类用来加载图片,创建、bind纹理,加载图片我用的是pillow库。fromOpenGLimportGLasglfromPILimportImageim

Opengl ES之RGB转NV21

前言在上一篇理论文章中我们介绍了YUV到RGB之间转换的几种公式与一些优化算法,今天我们再来介绍一下RGB到YUV的转换,顺便使用OpenglES做个实践,将一张RGB的图片通过Shader的方式转换YUV格式图,然后保存到本地。可能有的童鞋会问,YUV转RGB是为了渲染显示,那么RGB转YUV的应用场景是什么?在做视频编码的时候我们可以使用MediaCodec搭配Surface就可以完成,貌似也没有用到RGB转YUV的功能啊,硬编码没有用到,那么软编码呢?一般我们做视频编码的时候都是硬编码优先,软编码兜底的原则,在遇到一些硬编码不可用的情况下可能就需要用到x264库进行软编码了,而此时RGB

Opengl ES之RGB转NV21

前言在上一篇理论文章中我们介绍了YUV到RGB之间转换的几种公式与一些优化算法,今天我们再来介绍一下RGB到YUV的转换,顺便使用OpenglES做个实践,将一张RGB的图片通过Shader的方式转换YUV格式图,然后保存到本地。可能有的童鞋会问,YUV转RGB是为了渲染显示,那么RGB转YUV的应用场景是什么?在做视频编码的时候我们可以使用MediaCodec搭配Surface就可以完成,貌似也没有用到RGB转YUV的功能啊,硬编码没有用到,那么软编码呢?一般我们做视频编码的时候都是硬编码优先,软编码兜底的原则,在遇到一些硬编码不可用的情况下可能就需要用到x264库进行软编码了,而此时RGB

Vulkan的VkImage和OpenGL的Texture2D互转的3种方法

Vulkan的纹理和OpenGL的纹理之间共享的解决方案,因为项目的功能需要同时引入OpenGL和Vulkan,又因为效率的影响必须想办法优化,两者之间需要互相访问互相转换的高效方案。Vulkan的纹理图像类型是:VkImage,OpenGL的纹理类型是:Texture2D此文原创,收集和编写不易,望能珍惜。1.NVIDIAGPUOnly的方案在OpenGL4.5规范(简介)第1章的补充中新增了一个扩展GL_NV_draw_vulkan_image有提供如下函数glDrawVkImageNVglGetVkProcAddrNVglSignalVkFenceNVglSignalVkSemaphor