OBJ网格模型文件(上) - 学习随笔 很早的时候一直有个执念:我要从0开始,编程写一个obj模型的加载器。在学习3dsmax的时候,发现这种格式被很多软件所支持,而且导出的文件只含模型和材质,体积很小很干净,建好模型之后通常保存为自身的.max文件后还要导出一份obj文件以备用。以前用mod工具把游戏里面的3D模型以obj格式导入导出过,比如GTA,战国无双,甚至后来的王者农药等。比如网上下载一个路飞的obj模型导入到GTA中,然后就...
数据的流动——计算机是如何显示一个像素的 本文描述了在计算机内部是怎么把一张照片显示到屏幕上的。一个从编程/输入设备输入到显示器显示到人眼的完整过程。分为几个阶段:(应用程序/输入设备产生)数据与指令——>CPU——>显卡驱动程序——>显卡——>显示器——>人眼。
[图解]Qt的智能指针 代码中出现一个bug,最终发现是由于在某个特殊情况下出现了使用垂悬指针,造成了程序崩溃,进而学习了解了Qt的智能指针机制。一、悬垂指针的问题如图,有两个指针a和b指向同一片内存,如果删除其中一个指针a,再去使用指针b的话,程序会崩溃。因为指针b此时已经是一个垂悬指针(Dangling pointer)了,它指向的内存已经被释放不再有效。垂悬指针使用指针b之前先判断b是否为空,这个做法在这里是不起作...
实践记录 - 软件开发文档编写 先说方法与结论:采用腾讯/金山共享文档协作编写软件的用手册文档。产品源代码在gitlab仓库,采用gitlab的wiki编写软件开发文档;用pandoc工具将wiki的md文档转换为html网页;用HugeCHM将html页面打包为chm帮助文档。(一)Gitlab WikiGitlab wiki是gitlab自带的多人协作文档系统,用于开发人员记录关于软件的方方面面的内容。其中就可以包括开发文档...
早点下班小教程(一) -- Windows截屏方法 王老师:茴香豆的茴有几种写法知道吗?小明:不知道~王老师:有4种写法记好了。用毛笔写;用钢笔写;用圆珠笔写;用铅笔写……小明:老师,我还知道第5种写法,用棍子蘸上屎在墙上写!王老师:你出去!所以,电脑截屏截图有多少种方法呢?这里介绍4种方法,应该基本能覆盖到常见的场景。一、使用PC版微信或者QQQQ截图。登录电脑端QQ之后,按下“CTRL+ALT+A”即可实现截图。QQ聊天窗口 微信截图。登录电脑...
【翻译】VTK官方文档 - vtk文件格式 本文翻译自vtk官方文档:vtk_file_format文末有链接VTK提供了许多源对象和编写器对象,用于读取和写入流行的数据文件格式,此外,VTK也提供了自己的文件格式。创建一种数据文件格式的主要原因是为各种数据集类型提供一致的数据表示方案,并提供一种在软件之间通信数据的简单方法。只要有可能,我们建议您使用更广泛的格式,但如果这不可能,则可以改用本文介绍的格式。请注意,这些格式可能不会得到许多其...
【不完整笔记】VSCode-C++开发环境配置 网上有很多关于如何从零开始一步步搭建vscode的C++环境的教程文章,本文就不重复流程了,更多的是记录一些细节要点,主要是配置文件的写法,也作为我学习过程中的笔记备忘。.vscode文件夹在顶层目录新建,子目录都生效。开发C++时,文件夹中需要包含3个文件:任务配置 task.json运行配置 lauch.jsonC++开发配置 c_cpp_properties.jsontask.json文件t...
《程序员的自我修养》——全书思维导图(中) 书接前文:《程序员的自我修养》——全书思维导图(上)本文是《程序员的自我修养——链接装载与库》全书的思维导图(第6章-第8章),主要是装载与动态链接的内容。第6章 可执行文件的装载与进程第7章 动态链接第8章 Linux共享库的组织❤️欢迎关注+点赞+收藏+评论+转发❤️,原创不易,鼓励笔者创作更好的文章...
《程序员的自我修养》——全书思维导图(上) 《程序员的自我修养——链接装载与库》作者是俞甲子、石凡、潘爱民,主要介绍系统软件的运行机制和原理,涉及在Windows和Linux两个系统平台上,一个应用程序在编译、链接和运行时刻所发生的各种事项。正如书名所说,本书介绍的知识是每一个程序员容易忽视,但应该或多或少了解的基本素养。本文是《程序员的自我修养——链接装载与库》全书的思维导图(第1章-第5章)第1章 温故而知新第一章介绍了一些后面会用到的...
房贷LPR计算-附excel计算器链接 从今年起房贷实行LPR计算,看了半天才搞明白啥子是LPR,怎么算。>>> 总结成一句话算出『更改为LPR之前自己的房贷利率』与『更改为LPR时的五年期LPR利率』的差值,在今后也一直保持这个差值(差值即"LPR加点数值")。日后每年LPR利率会变,所以同步地自己的房贷利率也就会变。>>>做了个表格计算了LPR从4%-5%变化时的还款情况。可以在右上角处填写你自定...
盘点下玩过的解谜游戏 最近和同事聊天的时候说起了GBA模拟器,情怀这东西,哎~这么多游戏类型,算起来我对解谜游戏情有独钟,这里就做个回忆盘点,记录下我曾经玩过的那些解谜游戏。今年过半,还没写过文章emmmm1、摩艾君平台:FC第一款肯定属于是摩艾君了。第一次玩的时候我还在上小学,那时我跟着我爸去乡下派出所过年,他们办公我就在旁边玩小霸王(不要问我派出所为啥有游戏机#狗头),小霸王给这个游戏取的名字叫智慧桥...(WTF...
OBJ网格模型文件(下) - 软渲器 上篇说道,很早的时候一直有个执念:我要从0开始,编程写一个obj模型的加载器。在理解了obj文件的内容与渲染方面的一点知识后,现在我总算可以从单纯的想变为实现了。同时也知道了这个我所谓的从零开始,其实就是实现一个只靠CPU计算的软渲染器。这篇文章只是我的一个记录,如果对你有帮助的话最好,另外网上有很多大神们关于软渲染的更好的回答与资料,见文末参考链接。茶壶模型效果注:目前使用的obj文件是从3ds...
全屋三维交互漫游——three.js实现 在线demo(PC端):戳这里 。使用说明:WASD移动,鼠标控制视线,鼠标放在模型上可查看模型信息。〇、介绍把我家大体毛坯结构用3dsmax建了一个模型,然后在软件里稍微做了区域规划和家具建模和放置。然后嫌max的漫游功能太卡,正好又接触了three.js,所以就放到我的网上做一个交互漫游。。。一、建模屁颠屁颠地量好了房,又吭哧吭哧地画好了CAD,然后用3dsmax累觉不爱地建好模之后,导出成o...
画个球啊(下)——Three.js渲染素描风格场景 工具链:建模软件3dsmax + WebGL三维图形库three.js + 记事本notepad++ 外部素材:3张笔触贴图素材参照文章:使用 WebGL实现素描效果的渲染源码:sphere-sketch在线demo:Sketch-Scene (几何体场景的)本文非教程,算是学习记录备忘,和对上面参考文章的补充,如果想实践,请两篇文章结合食用。Sphere-Sketch本文非教程,算是学习记录备忘...
画个球啊(上)——纯C语言绘制圆球 封面来源:链接简介Long Long Ago,在知乎上看了叶大的“一百行以下有哪些给力代码“和“用C语言绘制心形”的回答,可谓是我图形学的开始之一,最近才好好理解完了后者思路和实现,自己做了个球体版的。然后便看一幅幅图片就这样神奇地画出来...大概的功能就是:输出一些字符到(黑糊糊的)控制台,模拟一个圆/球的视觉效果;生成一幅ppm格式的图像文件;加入考虑高光、光照角度变化等因素生成动画帧序列等等...
指针的理解 有P和Q两指针,都指向位置B.指针P --> B指针Q --> B指针P定义了一个指向(即将指针p"控制"内存的一个位置),而delete p切断了这种控制, 结果就是, 这时虽然P还是能访问它自己指向的这个位置B, 但B实际上不受P的控制,所以叫野指针. (具体来说,delete执行了free(),free()告诉系统的数据结构, 将位置B算作系统的空闲自由内存了...
正则表达式的基本使用 基本语法括号[方括号] 内容{花括号} 次数(小括号) 分组返回值、提升优先级\ 转义内容匹配字母: [a-zA-Z] 即 \W匹配数字: [0-9] 即 \d匹配非数字:[^0-9] 即 \D匹配空白: \s匹配非空白: \S任意字符: .次数{直接写数字}* 即 {0,1}+ 即 {1,}? 即 {0,1}懒惰匹配(尽量匹配少)*?+??...
代码文档生成工具Doxygen的使用备忘 Doxygen备忘下载与安装一般步骤生成配置文件Doxyfile: doxygen (-s) -g建立目录结构, 比如Doxyfile文件\doc文件夹(输出)\src文件夹(放代码) ->三者在同一目录下根据情况设置配置文件中的参数(关键)运行doxygen Doxyfile生成大概结构针对每个代码文件写doxygen注释继续运行doxygen Doxyfile配置...