【游戏引擎之路】登神长阶(十一)——C++大师教程:真正的大师,永远保持一颗学徒的心

【游戏引擎之路】登神长阶(十一)——C++大师教程:真正的大师,永远保持一颗学徒的心

2024年 5月20日-6月4日:攻克2D物理引擎。
2024年 6月4日-6月13日:攻克《3D数学基础》。
2024年 6月13日-6月20日:攻克《3D图形教程》。
2024年 6月21日-6月22日:攻克《Raycasting游戏教程》。
2024年 6月23日-7月1日:攻克《Windows游戏编程大师技巧》。
2024年 7月2日-7月6日:攻克《雅达利2600汇编游戏开发》。
2024年 7月7日-7月11日:攻克《x86/x64汇编语言》。
2024年 7月11日-7月22日:学习《3D游戏编程大师技巧》(阶段性)。
2024年 7月14日-7月18日:学习《游戏引擎架构》(完成)。
2024年 7月23日-7月30日:攻克Python语言学习。
2024年 7月31日-8月5日:攻克《3D游戏编程大师技巧》。
2024年 9月10日-9月20日:攻克游戏动画绑定
2024年 10月27日-10月31日:攻克《C++大师教程》

(一)近况总结
这次的学习感悟比较简短,所以就不分多段了。十月的净工作时间是180小时。除去国庆的假期,加上看全球总决赛期间因为玩《英雄联盟》手游耽误了些时间,总地来说是好的。可是我也越发越觉得自已的身体经不起折腾了。工作疲惫之后如果玩游戏,必然会头痛,百分之百。
也不关是头痛的问题,玩游戏之后因为疲惫导致的精神萎靡也非常难恢复。我真的很难想象我年轻的时候是怎么过来的,我年轻的时候晚上可以打游戏,然后第二天起来照样一点问题也没有。正是因为这种习惯害了我,当我因为自已的身体变差,抑郁症非常轻的时候,我不把这个状态归到自已的抑郁症里面,反而觉得是自已的意志出现问题。我不想工作,想玩游戏,那不是我的精神疲惫了,需要休息,而是因为我的思想有问题。后来就在折磨自已的路上越走越远了。
想想看,我如果早10年就清楚地认识到自已的病症,我应该还能发挥多大的能量啊。现在我晚上10点睡觉,早上5点起床。年轻的时候也不曾做到这一点。但即便如此健康的作息,给自已带来的专注力也是有限的。每个人虽然每天都是24小时。但是只有拥有专注力的时间才是关键。而我的专注力仅仅只剩下了半天。而我只能在这半天之中,想办法去完成自已的事业。
现在我的作息是上午进行建模,我是5点起床,工作到12点,有6小时左右的专注时间。这个是极限了。而下午则进行一些学习,就比如现在在学的c++。当然还有一个重要的原因就是我的肩膀伤,我如果长期进行建模,肩膀很快就会剧痛。当然,这还算好的,如果是前几年,我什么也不干,肩膀也会痛。

(二)C++的学习
“真正的大师,永远保持一颗学徒的心。”这是《英雄联盟》中剑圣的一句台词,而我在“烧水学习法”中学到的另外一句就是,如果想学有所成,唯一的作法就是模仿大师。所以大师做什么,你就做什么。其实“学习”这样东西就是这样简单。
我是学c++起家的,最早学c++的时候,还是我读初中的时候。后来开发网页游戏,用了十多年的Java,现在终于转回到c++里面来了。这个教程有58小时。我最初被吓了一跳,想着这么长的教程我哪有时间学啊。后来想想,我也许可以跳过自已已经学习过的部分,于是还是开始了学习。而使我坚定自已决心的,就是游戏中这句始终萦绕着我的话。
c++11我之前也学过。但是,我学的时候,还没什么“现代c++”的说法,这次教程里面就明确说了,c++11之后的c++版本叫“现代c++”,拥有着一些不同的编程指导。我琢磨着,我使用c++的经历都属于“经典c++”,所以看现在这些人的c++代码的时候,总觉得有些隔阂。
就比如lambda表达式,我也用,C#中也有lambda表达式,Java中也有(但Java那个完全是另外一个东西),但是我对c++中的lambda表达式是个什么东西始终搞不明白,所以使用的时候总有些隔阂,总不能放开手脚去用。这次学习之后,我完全明白lambda表达式是什么东西了,不禁惊叹这个设计的精妙。也非常大胆地使用了。
又比如说智能指针。我自从研究引擎以来,一直用c++写东西,但是从来没有用过智能指针。想想看真的非常Old School,没办法,我学c++的年代根本就没这个东西,而new delete的组合已经深入自已的骨髓了,这个是c++编程者必须要掌握的习惯。现在用上了智能指针,终于觉得自已的操作习惯能够和我最近这些年用的Java,C#靠近了一点。
古人有句话,磨刀不误砍柴功,希望这句话是对的,希望我的c++的学习能够让我的基础更好一点。
加油吧。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/460822.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++动态规划】有效括号的嵌套深度

本文涉及知识点 C动态规划 LeetCode1111. 有效括号的嵌套深度 有效括号字符串 定义:对于每个左括号,都能找到与之对应的右括号,反之亦然。详情参见题末「有效括号字符串」部分。 嵌套深度 depth 定义:即有效括号字符串嵌套的层…

医院信息化与智能化系统(14)

医院信息化与智能化系统(14) 这里只描述对应过程,和可能遇到的问题及解决办法以及对应的参考链接,并不会直接每一步详细配置 如果你想通过文字描述或代码画流程图,可以试试PlantUML,告诉GPT你的文件结构,让他给你对应…

dedecms手机搜索不跳转手机页面模板的解决方法

1.找到文件plus/search.php,添加如下代码并保存 $mobile (isset($mobile) && is_numeric($mobile)) ? $mobile : 0; if ( $mobile1 ) {define(DEDEMOB, Y); } 2.来到网站后台,默认模板管理,新建模板 将手机端列表页面的.html文件&…

臻于智境 安全护航 亚信安全受邀出席新华三智算新品发布会

近日,紫光股份旗下新华三集团在北京隆重举办了主题为“乘势 进化 臻于智境”的新华三智算新品发布会。作为新华三集团的长期战略合作伙伴,亚信安全受邀参会,亚信安全CEO马红军出席发布仪式,并与来自各界的业界伙伴共同探讨智能化…

金和OA-C6 ApproveRemindSetExec.aspx XXE漏洞复现(CNVD-2024-40568)

0x01 产品描述: 金和C6协同管理平台是以"精确管理思想"为灵魂,围绕“企业协同四层次理论”模型,并紧紧抓住现代企业管理的六个核心要素:文化 Culture、 沟通Communication 、 协作Collaboration 、创新 Creation、 控制…

DB-GPT系列(一):DB-GPT能帮你做什么?

DB-GPT是一个开源的AI原生数据应用开发框架(AI Native Data App Development framework with AWEL and Agents),围绕大模型提供灵活、可拓展的AI原生数据应用管理与开发能力,可以帮助企业快速构建、部署智能AI数据应用,通过智能数据分析、洞察…

Synergy遇见的问题

1.两台设备无法ping通 首先两个设备是在同一个局域网中,但任然是无法ping通 问题所在:防火墙进行了隔离; 解决方法: (1)关闭防火墙 没有用过,个人感觉不怎么安全就没有使用; &am…

视觉目标检测标注xml格式文件解析可视化 - python 实现

视觉目标检测任务,通常用 labelimage标注,对应的标注文件为xml。 该示例来源于开源项目:https://gitcode.com/DataBall/DataBall-detections-100s/overview 读取 xml 标注文件,并进行可视化示例如下: #-*-coding:ut…

Uniswap/v2-core使用及其交易流程

Uniswap是一个开源的去中心化的交易所,在github上面有以下重要仓库: uniswap-v2-core: 币对池pair的核心智能合约。这个repository包含了Uniswap的币对池pair的所有核心逻辑,增加流动性、减少流动性等。uniswap-v2-periphery&…

萤石私有化设备视频平台EasyCVR视频融合平台如何构建农业综合监控监管系统?

现代农业的迅速发展中,集成监控管理系统已成为提高农业生产效率和优化管理的关键工具。萤石私有化设备视频平台EasyCVR,作为一个具有高度可扩展性、灵活的视频处理能力和便捷的部署方式的视频监控解决方案,为农业监控系统的建设提供了坚实的技…

如何在小红书发布笔记时显示外地IP地址

小红书平台在发布笔记时显示IP地址可能是由于网络爬虫或者某些技术手段抓取数据时所导致的。为了保护用户隐私和安全,显示外地IP地址,可以尝试以下几种方法: 1.检查发布环境: 确保你是在一个安全、可信的网络环境下发布笔记&…

数据结构——单链表详解

博客ID:LanFuRenC系列专栏:C语言重点部分 C语言注意点 C基础 Linux 数据结构 C注意点 声明等级:黑色->蓝色->红色 欢迎新粉加入,会一直努力提供更优质的编程博客,希望大家三连支持一下啦 目录 1.链表的概念…

奥数与C++小学四年级(第十二题 装礼盒)

参考程序代码&#xff1a; #include <iostream> #include <vector> #include <algorithm>using namespace std;int main() {// 各种颜色宝石的数量vector<int> gems {11, 22, 33, 44, 55, 66, 77};int totalBoxes 0;while (true) {// 对宝石数量进行…

Zookeeper 对于 Kafka 的作用是什么?

大家好&#xff0c;我是锋哥。今天分享关于【Zookeeper 对于 Kafka 的作用是什么&#xff1f;】面试题&#xff1f;希望对大家有帮助&#xff1b; Zookeeper 对于 Kafka 的作用是什么&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 ZooKeeper 在 Kafka…

基于SSM学生竞赛模拟系统的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;用户管理&#xff0c;公告信息管理&#xff0c;试题管理&#xff0c;论坛交流&#xff0c;试卷管理&#xff0c;系统管理 前台账号功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;公告…

pip使用

pip全称pip install package,是python第三方包sitepackage管理的工具&#xff0c;安装&#xff0c;卸载第三方包。安装python时可以选择安装pip&#xff0c;或自己安装pip 查看pip是否安装&#xff1a;pip --version 安装pip &#xff1a;pip python -m pip install --upgrade…

Netron:神经网络模型可视化工具指南【全网最详细】

目录 Netron初印象 Netron 功能是什么&#xff1f; Netron 的来源 支持的模型文件格式 如何使用 Netron 打开和查看模型文件&#xff1f; 要掌握哪些知识才能看懂模型结构&#xff1f; 模型结构解释 part1 part2 part3 part4 part5 各节点解释说明 起始和终止节点…

ComfyUI - ComfyUI 工作流中集成 SAM2 + GroundingDINO 处理图像与视频 教程

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/143359538 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 SAM2 与…

阿里云物联网的通信方式

阿里云物联网通信的两种方式&#xff0c;一个是物模型&#xff08;分为服务&#xff0c;事件&#xff0c;属性此篇文章只讲解物模型中的服务和属性用法&#xff09;&#xff0c;一个是自定义topic&#xff08;要另外设置数据流转&#xff09; 1.使用产品内的功能定义&#xff0…