OpenGL复习(FPS、SwapChain、帧缓冲、后期处理
屏幕刷新率, FPS,垂直同步VSync 屏幕刷新率:每秒显示器刷新画面的次数,单位HZ,它是由硬件层面决定的,无论当前画面是否准备好,都会以固定的节奏强制刷新,每次刷新时从swapchain的fontbuffer逐行扫描读取 帧率FPS/渲染速率:每秒渲染图像的次数,渲染完一张图像就会接着渲染下一张,它是由硬件软件很多因素决定的,每秒都是不固定的,逐行写入到swapchai...
屏幕刷新率, FPS,垂直同步VSync 屏幕刷新率:每秒显示器刷新画面的次数,单位HZ,它是由硬件层面决定的,无论当前画面是否准备好,都会以固定的节奏强制刷新,每次刷新时从swapchain的fontbuffer逐行扫描读取 帧率FPS/渲染速率:每秒渲染图像的次数,渲染完一张图像就会接着渲染下一张,它是由硬件软件很多因素决定的,每秒都是不固定的,逐行写入到swapchai...
递归 思想:将问题分解为相同子问题(函数调用自身),从而解决问题 方向:自顶向下调用,自底向上执行,从子问题开始计算 int func(int n){//函数功能:返回n的阶乘 //结束条件 if(n <0)return-1; if(n ==0|| n ==1 )return n; //等价关系式 return n *func(n -1); } i...
测试与混合 模板测试 模板测试也有模板缓冲和模板值,通过clear清楚后所有模板值归0 测试时机:发生在深度测试的前一个阶段 流程:在drawcall前设置测试规则和模板值如何更新,在模板测试阶段,遍历所有片元,如果模板测试通过,设置保留片元,设置像素模板值,否则丢弃片元,不更新像素模板值 glStencilMask(0x00...
UE多线程_CPU game,render,RHI,都属于Cpu线程 Runnable、只包含基础的功能 语法: FRunnable可运行对象 init 创建线程时调用 run 初始化完成且成功调用(即开始运行线程,执行一次) ...
C++项目 编译c++ 如果未启动editor应该先构建c++代码,才能启动 如果打开editor修改了c++代码,无需通过IDE构建运行的方式重启eidtor,只需点击editor的recompiles and reloads c++ 按钮即可 有时大量修改c++代码(比如拷贝过来plugin目录),很容易出现编译失败的问题,需要重新...
Renderdoc 图形调试器,支持多个操作系统上的多个图形API 链接和调试 UE_Editor plugin: 启动engine editor 勾选Enabled RenderDoc Plugin 并 restart 点击右上角renderdoc按钮 点击c...
UML 作用 Unified Modeling Language,可视化建模语言 作用:直观的表示系统结构, 便于开发者、设计师和客户之间的沟通 分类 UML图可分为两大类: 结构型图(静态图) 类图(Class Diagram)描述系统的静态结构 对象图(Object Diagram) 展示某一时刻的对象实例及其关系 组件图(Component Diagram)...
使用VSCode开发UE项目 修改ue->Editor Preferences->Source Code->vs code,设置默认编辑器,这样在general vs project files时将生成关于vs code的构建文件.code-workspace 配置vscode环境 安装下列插件 C/C...
类型转换 类型转换:将一种数据类型转换为另一种数据类型 隐式转换 时机:在表达式、条件语句、初始化、赋值、函数形参实参……情况会自动隐式转换,使其类型匹配 支持的转换操作: 算数类型转换(整形(char,bool,int),浮点,低精度高精度,有符号无符号) 数组/函数和指针 指针作为条件时和bool转换 const和...
嵌套类 class A { private: class B { public: }; } 嵌套类:一个类的定义在另一个类中,定义嵌套类的类称为外围类 使用嵌套类类型,遵守成员访问修饰符,当用public修饰可以被外部使用,需要外围类:: 访问成员:(相互访问的权限非常有限) 嵌套类访问外围类的成员 / 外围类想要使用嵌套类,需要通过创建...