- 博客(6)
- 资源 (5)
- 收藏
- 关注
原创 Vulkan-点光源阴影映射
Vulkan-点光源阴影映射 Cubemap是一种特殊数据结构,以其特殊的采样方式实现了球空间数据的采集。经典的使用是实现点光源的阴影映射。 在openGL中实现cubemap纹理的生成,有两种方式:连续使用六次渲染,每次渲染cubemap的一面在几何着色器中直接投影六个方向,一次渲染 两种渲染方式的性能在openL中差异不大。此次vulkan实现cubemap采用第一种方式。...
2020-03-29 22:56:00 850 1
原创 vulkan-pipelinecache(管线缓存)
定义和作用:Pipeline cache objects allow the result of pipeline construction to be reused between pipelines and between runs of an application. Reuse between pipelines is achieved by passing the same pipeli...
2020-03-03 18:01:52 2388
原创 VS2017错误:缺少组件未能启动服务
1. 强制电脑关机后,启动vs项目出现 如下问题:解决方案里项目显示未被加载vs输出错误: 缺少组件Microsoft.VisualStudio.Component.VC.Tools.x86.x642. 解决办法: 重装vs2017,但卸载VS会显示找不到安装路径。根据知乎大佬教程从github上下载卸载程序 VisualStudionUninstaller,卸载VS,并将安装的位置...
2020-03-01 09:45:20 3787 2
原创 实例讲解回调机制
回调机制是一个非常有趣的机制,我对于回调的简单理解就像是一种责任委托一样 下面先通过第一个简单的基于静态的回调例子来讲解回调,然后在对比实例回调: 该场景是: 假如B向A发送“削苹果”的指令,A需要完成该任务。完成后,A通知B,B将对A的结果做出反应。 在实现中,可能A完成指令时,B有其他任务,所以我们考虑使用一个线程来实现A的任务。这样B就不能阻塞在A完成任务时。 代码
2017-10-01 19:44:34 412
原创 创建线程的两种方式
ava提供了创建线程的两种方法 //创建线程第一种方法,继承扩展Thread类,并实现run()方法 //创建线程的第二种方法,实现Runnable接口,实现run()方法两种方法并不是绝对的谁好谁坏,只是在某些特定的情况下才会选择使用哪种方式。一般使用扩展Thread()类可以方便的调用Thread类的方法工具。而在另外一种情况下,如果需要将run()方法置于某个类之下,而这个类要拓展另外一个类,需要Runnable方式。此外,面向对象的人认为,如果线程完成的任务并不是一种Thread,应该放在一
2017-09-28 14:19:26 295
原创 基于tcp的简单远程并发控制系统
编写语言:c 编译环境:Linux 老师布置了关于远程控制系统的改进,使服务段与多个客户端能够并发通信。在这个系统的操作中,客户端连上服务端之后,向服务端发送简单的控制指令,服务端收到控制指令后,进行处理,并将处理结果返回给客户端。 1.服务端代码#include#include#include#include0#include#i
2017-09-27 20:29:26 934
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人