自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 资源 (3)
  • 收藏
  • 关注

转载 Console 多开

1、在项目自动生成的stdafx.h文件中添加下面头文件#include <io.h>#include <fcntl.h>#include <stdio.h> 2、把下面的函数加到你初始化的地方,然后你就可以使用printf函数了void InitConsoleWindow(){    int nCrt = 0;    FILE* fp;  ...

2018-10-26 17:29:46 360

原创 unity收集性能数据接口

https://docs.unity3d.com/ScriptReference/Profiling.Profiler.htmlIn standalone games, the Profiler saves all profiling information to a file when you specify a Profiler.logFile and set both Profiler....

2018-10-26 11:48:28 704

转载 Direct3D轮回:游戏特效之全屏泛光(Bloom)

https://www.cnblogs.com/kenkao/archive/2011/08/25/2153752.htmlBloom,又称“全屏泛光”,是大名鼎鼎的虚幻3游戏引擎中最通用的后期特效技术~Bloom特效的实现主要依赖于PostProcess框架,即实时绘制当前场景到一后台渲染表面,而后针对其对应贴图进行像素级渲染~大家还记得我们之前实现的水面效果中的反射和折射贴图吗?此...

2018-10-25 17:07:26 4146

转载 雾化

https://www.cnblogs.com/kenkao/archive/2011/08/14/2137726.html风动和雾化都是相对而言比较简单的游戏特效,实现起来甚至比我们前一节提到的晴天光晕还要简单~大家还记得上上节中我们为陆地种植的那片植被吗?现在我们在场景中加入风的效果,让草儿动起来 ^ ^首先,我们来实现一个风动效果的Shader:Wind.fx原理非常简单...

2018-10-25 17:06:37 293

原创 cocos骨骼动画着色器 看下骨骼动画实现原理

const char* cc3D_PositionNormalTex_vert = R"(#ifdef USE_NORMAL_MAPPING#if (MAX_DIRECTIONAL_LIGHT_NUM > 0)uniform vec3 u_DirLightSourceDirection[MAX_DIRECTIONAL_LIGHT_NUM];#endif#endif#if (MA...

2018-10-25 11:33:34 349

原创 directx 11 电子书

http://www.d3dcoder.net/d3d11.htm

2018-10-24 19:16:35 805

转载 DrawIndexedPrimitive

HRESULT DrawIndexedPrimitive( [in]  D3DPRIMITIVETYPE Type, [in]  INT BaseVertexIndex, [in]  UINT MinIndex, [in]  UINT NumVertices, [in]  UINT StartIndex, [in]  UINT PrimitiveCount);M...

2018-10-24 17:39:12 202

转载 【D3D学习记录】DrawIndexedPrimitive函数的详细解释

为了便于说明,首先假设存在下列的顶点缓冲和索引缓冲   vb=   {    {-1.0, 1.0, 0.0}, index 0    { 1.0, 1.0, 0.0}, index 1    { 1.0,-1.0, 0.0}, index 2    {-1.0,-1.0, 0.0}, index 3    {-2.0, 2.0, 0.0}, index 4    { 2.0,...

2018-10-24 17:36:48 446

转载 DirectX11

https://www.cnblogs.com/X-Jun/p/9297810.htmlDirectX11 With Windows SDK--09 纹理映射与采样器状态阅读目录前言 纹理坐标系 纹理读取 DDS位图和WIC位图 DDSTextureLoader和WICTextureLoader库 CreateDDSTextureFromFile函数--从文件读取DD...

2018-10-24 14:44:46 699

转载 DirectX11 高级着色器语言HLSL入门

高级着色器语言HLSL入门1. 数据类型简介与CPU不同,在显卡芯片中,最小的数据吞吐单元是一个由32位浮点数组成的四元组。这一点很有道理不是,想想你在渲染过程中所有涉及到的数据,最复杂的不外乎四维坐标(x,y,z,w)或颜色(r,g,b,a),这样GPU可以一次性处理一个四元组。而整数什么的在显卡中被放到四元组的一个分量里使用,而很多显卡中,整数、布尔值都不被直接支持,而是转为浮点数使用。至...

2018-10-24 09:44:09 795

转载 HLSL Introduction

 By Chang Li High Level Shading Language (HLSL), a programming language for Graphic Processing Unit (GPU) in DirectX 9/10/11, supports the shader construction with C-like syntax, types, expressions...

2018-10-24 09:42:44 450

转载 Directx11基础教程三之VertexShader,PixelShader,buffer

一,看本节教程前应该掌握:     (1)D3D11基础教程二之D3D11初始化     (2)了解3D渲染流水线的知识,如世界变换,相机变换,透视投影变换,视口变换,光栅化,线性插值,gouraud着色等,最好具备一定的图形学基础,我推荐一本书<3D游戏编程大师技巧>,这本书完整的讲解了3D渲染流水线的方方面面。二,本节教程的程序结构:三,VertexShader(顶点...

2018-10-22 20:36:49 472

转载 Unity3D - Shader - 普通纹理

https://blog.csdn.net/biezhihua/article/details/78620157纹理基础概念纹理的目的:用于使用一张图片来控制模型的外观。纹理映射(texture mapping):可以把一张图黏在模型表面,逐纹素的控制模型的颜色。纹理映射坐标(UV坐标):纹理映射坐标定义了该顶点在纹理中对应的2D坐标,这些坐标使用二维变量(u,v)来表示,其中u代表...

2018-10-22 19:54:04 393

转载 Lightmap3ds

https://github.com/Gamieon/Lightmap3ds

2018-10-19 10:45:45 118

转载 lightmapper

https://github.com/ands/lightmapper

2018-10-19 10:39:52 448

转载 光照贴图教程

http://www.alsprogrammingresource.com/lightmapping_tutorial.html光照贴图教程 作者:Alan Baylis 19/12/2001 在大多数游戏中,光照贴图仍然是首选的照明方法,也就是因为无论场景中有多少灯光,它都是快速的,如果你曾经拍过一个没有破裂或者没有破坏的灯泡而是周围的灯光然后,你已经看到了行动(或缺乏)...

2018-10-19 10:39:21 3010 1

转载 Lightmaps

Tutorial - Dynamic Lightmaps in OpenGLNovember 16, 2003This article explains how to implement dynamic lightmaps in OpenGL with multitexturing. Features sample C code and is accompanied by a demo w...

2018-10-19 10:38:33 354

转载 [引擎]之四:unity中查看简单mesh顶点顺序的小工具——修改

https://blog.csdn.net/yanchezuo/article/details/789788841 添加查看顶点位置和uv信息2 兼容顶点数量和uv数量不同的情况3 添加是否显示信息的选项4 完整代码5 最后这里制作的小工具,功能有点单薄,只能查看顶点的顺序。 在写CubeMesh的时候,需要查看顶点的位置信息和uv信息。 因此,添加这两个功能:(1) 添加查...

2018-10-18 18:04:07 669

转载 图形渲染及优化—Unity合批技术实践

在前面的文章中我介绍了Batch对于渲染效率的影响,这次来说说在Unity开发过程中常用的几种合批技术。 Resource Merging我们可以在美术资源生产的过程中做很多渲染批次方面的优化。通常我们可以将一些使用相同材质的物体模型合并成一个模型,在游戏渲染的时候一次提交给渲染API进行绘制,降低了Draw call的数量。但是这样带来了一个问题,所有合并的模型必须一次全部绘制。哪怕...

2018-10-18 18:00:11 1895

转载 批处理渲染glDrawElements

void TextureAtlas::drawNumberOfQuads(ssize_t numberOfQuads){    CCASSERT(numberOfQuads>=0, "numberOfQuads must be >= 0");    this->drawNumberOfQuads(numberOfQuads, 0);}void TextureAtlas...

2018-10-18 17:57:50 745

原创 gprof性能工具

https://pypi.org/project/gprof2dot/http://sam.zoy.org/writings/programming/gprof-helper.chttp://sam.zoy.org/writings/programming/gprof.htmlhttp://www.graphviz.org/download/https://www.cnblogs.com...

2018-10-17 14:17:37 335

转载 深入探索并发编程系列(五)-将内存乱序逮个正着

当用C/C++编写无锁代码时,一定要小心谨慎,以保证正确的内存顺序。不然的话,会发生一些诡异的事情。Intel在x86/x64体系结构手册的Volume 3, §8.2.3 中列出了一些可能会发生的诡异的事情。这里介绍其中一个最简单的例子。假设在内存中有两个整型变量x和y,都初始化为0。两个处理器并行执行下面的机器码:不要被上面的汇编代码给吓坏了。这个例子的确是阐述CPU执行顺序的...

2018-10-15 18:09:35 713

转载 谈乱序执行和内存屏障

10多年前的程序员对处理器乱序执行和内存屏障应该是很熟悉的,但随着计算机技术突飞猛进的发展,我们离底层原理越来越远,这并不是一件坏事,但在有些情况下了解一些底层原理有助于我们更好的工作,比如现代高级语言多提供了多线程并发技术,如果不深入下来,那么有些由多线程造成问题就很难排查和理解.今天准备来聊聊乱序执行技术和内存屏障.为了能让大多数人理解,这里省略了很多不影响理解的旁枝末节,但由于我个人水平...

2018-10-15 18:07:23 319

转载 memory_order 强内存模型保证内存顺序就好

在C++11标准原子库中,大多数函数接收一个memory_order参数:  enum memory_order { memory_order_relaxed, memory_order_consume, memory_order_acquire, memory_order_release, memory_order_acq_rel,...

2018-10-15 15:09:49 4186

转载 as well as emitting any necessary fencing or special instructions. In x86 asm, ordinary loads and st

6down votefavorite1According to this https://www.cl.cam.ac.uk/~pes20/cpp/cpp0xmappings.html, a released store is implemented as MOV (into memory) on x86 (including x86-64).According to his http:...

2018-10-15 15:01:21 176

转载 memery order on x86/64 already implies acquire semantics and every store implies release semantics

Acquire and Release SemanticsGenerally speaking, in lock-free programming, there are two ways in which threads can manipulate shared memory: They can compete with each other for a resource, or they ...

2018-10-15 14:58:35 299

转载 memory order In x86 asm, ordinary loads and stores already have acquire / release semantics

Acquire and Release SemanticsGenerally speaking, in lock-free programming, there are two ways in which threads can manipulate shared memory: They can compete with each other for a resource, or they ...

2018-10-15 14:55:39 601

转载 memory-ordering-at-compile-time

浅谈Memory Reordering  Memory ordering在我们编写的 C/C++代码和它被在 CPU 上运行,按照一些规则,代码的内存交互会被乱序.内存乱序同时由编译器(编译时候)和处理器(运行时)造成,都为了使代码运行的更快.被编译开发者和处理器制造商遵循的中心内存排序准则是:不能改变单线程程序的行为.因为这条规则,在写单线程代码时内存乱序被普...

2018-10-15 14:49:17 217

原创 atomicops.h

https://git.project-hobbit.eu/dj16/ricec/blob/c9d3dceb1c3b1c03a42077e0461e3ce5a2615a51/data/atomicops.h#L248// ©2013-2016 Cameron Desrochers.// Distributed under the simplified BSD license (see th...

2018-10-15 14:43:15 824

转载 Does the semantics of `std::memory_order_acquire` requires processor instructions on x86/x86_64?

https://stackoverflow.com/questions/18576986/does-the-semantics-of-stdmemory-order-acquire-requires-processor-instruction7down votefavorite4It is known that on x86 for the operations load() and ...

2018-10-15 14:40:18 228

转载 C/C++11 mappings to processors

C/C++11 mappings to processorsThis document summarises some known mappings of C/C++11 atomic operations to x86, PowerPC, ARMv7, ARMv8, and Itanium instruction sequences. These are collected for disc...

2018-10-15 14:38:34 232

原创 centos升级g++7.3.0

sudo yum install centos-release-sclsudo yum install devtoolset-7scl enable devtoolset-7 bash

2018-10-13 15:47:30 3776

转载 SetThreadName & GetThreadName

ypedef struct tagTHREADNAME_INFO{  DWORD dwType; // must be 0x1000  LPCSTR szName; // pointer to name (in user addr space)  DWORD dwThreadID; // thread ID (-1=caller thread)  DWORD dwFlags; // reserve...

2018-10-12 15:34:42 1195

转载 interlockedCompareExchange

class Lock{ volatile int dest = 0; int exchange = 100; int compare = 0; void acquire() { While(true) { if(interlockedCompareExchange(&dest, exchan...

2018-10-11 15:40:21 1393

va可以使用,大家请放心使用,谢谢你们

va可以使用,大家请放心使用,谢谢你们,Visual Assist 10.9 -2302 版本可以使用

2019-02-25

d3d11 Render To Texture, RTT

渲染到贴图,使用Render To Texture, RTT, 渲染到纹理的详细代码

2019-02-19

显示uv坐标

unity显示uv坐标

2018-10-23

空空如也

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

TA关注的人

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