- 博客(26)
- 资源 (1)
- 收藏
- 关注
原创 【Games104-2】Layerad Architecture of Game Engine
Tool Layer;Function Layer;Resource Layer;Core Layer;Platform Layer;3rd Party Libraries
2022-03-31 10:55:08
179
原创 【GAMES104-01】Overview of Game Engine
History of Game Enginefather of Game Engine: John Carmackfirst demonstration of game engine application:Wolfenstein 3D(1992)Doom&ShadowCasterearly age of modern game engine:Quake(real-time 3D rendering)Game Engine DefinitionTechnology foundation
2022-03-31 09:04:22
154
原创 【git】本地代码库管理
版本控制个人开发团队开发协同修改数据备份版本管理:不保存重复数据,SVN增量式管理(集中式),Git文件系统快照(分布式 解决单向故障)权限控制历史记录分支管理git 命令行右键 git bashllcd Gitworkspacemkdir wechat 新建目录git init git初始化ls -lA 显示隐藏文件ll .git/.git存放本地库相关的子目录和文件,不要删除/乱改设置签名形式用户名:tomEmail:作用:区分不同开发人员
2021-11-19 16:36:44
1121
原创 【ROS】
ROS robot operating system机器人操作系统分布式开发Node 节点 ——执行单元执行具体任务的进程、独立运行的可执行文件可使用不同语言,分布式运行在不同主机节点命名唯一ROS Master 节点管理器 ——控制中心提供命名、注册服务、跟踪和记录话题、提供参数服务器Topic 话题——异步通信机制使用发布/订阅 从发布者发到订阅者publisher/subscriberMessage消息——话题数据具有一定的类型和数据结构.msg可以自定义通道是话题 传输的
2021-10-29 10:37:02
69
原创 【VIM】PowerVim安装及使用
项目git网址:https://github.com/youngyangyang04/PowerVim项目运行安装命令:git clone https://github.com/youngyangyang04/PowerVim.gitcd PowerVim sh install.sh个人系统:ubuntu16.04问题1:系统语言问题Syntax error: "(" unexpected解决:bash install.sh问题2:LANG = "zh_CN.GB2312"异常解
2021-10-29 10:20:52
2045
1
原创 【设计模式5】代理模式cpp
结构型模式:类和类的组合获取更大的结构。代理模式(Proxy模式) 结构型模式之一,可以为其他对象提供一种代理以控制对这个对象的访问。代理是指具有与代理元(被代理的对象)具有相同接口的类,客户端必须通过代理与被代理的目标类交互。当一个对象不适合或者不能直接引用另一个对象的时候,利用代理对象作为中介完成。应用:1、远程代理,一个对象在不同地址空间提供局部代表,WebService调用代理实现远程访问。2、虚拟代理,对实例化开销很大的对象通过代理存放优化,如HTML的未打开图片框,存储路径和尺寸调
2021-10-02 22:42:01
203
原创 【设计模式4】装饰模式
装饰模式又叫包装模式,用继承实现类的功能拓展,可以动态给一个类增加功能。把附加的功能放到单独的类中。类中的装饰功能从类中搬移去除,可以简化原有类,将核心职责和装饰功能区分来,去除重复的装饰逻辑。适用:当新加入的东西仅仅为了满足一些只有特定情况下才会执行的特殊行为,而且需要有选择地,有顺序的使用装饰功能包装对象。顺便体现了一下类的构造析构函数顺序 继承删除父类成员指针这块还没太理解 回头再看下内存泄露方面的东西具体英雄继承抽象英雄类,抽象武器继承抽象英雄类,具体武器继承抽象武器。创建具体英雄类实例,抽
2021-10-01 22:39:18
99
原创 【设计模式3】策略模式
策略模式:定义算法家族并分别封装起来,让它们之间可以互相替换,算法的变化不会影响使用的客户。简化单元测试在不同时间对应不同的业务规则,可以考虑策略模式处理这种变化的可能性。单纯的策略模式需要客户端去知道每个策略的类名,可以和简单工厂模式结合进行隐藏。/*2021.09.29 策略模式(Strategy)策略模式:定义算法家族并分别封装起来,让它们之间可以互相替换,算法的变化不会影响使用的客户。*/#include <iostream>using namespace std;
2021-09-29 19:55:05
77
原创 【设计模式2】简单工厂类
简单工厂模式创建工厂类,通过传入参数,让工厂知道应该创建什么对象。优点:1、客户端与具体实现类解耦。2、不需要考虑某些类创建过程比较复杂情况。缺点:1、增加新功能需要修改源代码,不符合开闭原则。2、工厂类职责过重,出现问题影响整个模块。注意简单工厂类的创建对象的函数为静态成员函数,与类本身绑定,即不需要实例化工厂类生成工厂类对象就可以创建底下对应的类对象。UML类图大概是 工厂类依赖于抽象类,实现类继承抽象类(偷懒不贴图了)#include <iostream>using
2021-09-23 23:16:55
115
原创 【2】Learn Opengl 复习向 入门-你好三角形
定义VBO生成(gen)绑定(bind)缓冲类型(array)复制到内存(glBufferData)unsigned int VBO;glGenBuffers(1, &VBO);glBindBuffer(GL_ARRAY_BUFFER, VBO); glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW);顶点着色器版本声明 与opengl版本匹配输入变量位置值 in 类型 名称(输入顶点属性
2021-07-05 21:42:49
203
原创 【1】Learn Opengl 复习向 入门-你好窗口
https://learnopengl-cn.github.io/入门-你好窗口#include<glad/glad.h>#include <GLFW/glfw3.h>#include <iostream>#include<stdio.h>#include<math.h>#pragma region 函数_变量声明GLFWwindow* window; //窗口指针const unsigned int SCR_WI
2021-06-29 22:28:29
116
原创 7种排序算法及C++代码
参考:排序算法选泡插 快归希堆 桶计基快速排序被数组下标恶心到了。。。c数组写法,c数组下标越界是不报错的,涉及递增递减自己写边界吧,宁可冗余//确定枢纽元int partition(int arr[], int low, int high) { int i = low - 1; int j = high; int pivot = arr[high];//直接将末尾当初始枢纽元 while (1) { while (i<high&&arr[++i] <
2021-06-29 17:27:27
111
原创 2021-06-22 C++面试知识点归纳
C++基础1、面向对象的三大特性:封装、继承、多态2、类的访问权限:private、protected、public3、类的构造函数、析构函数、赋值函数、拷贝函数4、移动构造函数与拷贝构造函数对比5、深拷贝与浅拷贝的区别6、空类有哪些函数?空类的大小?7、内存分区:全局区、堆区、栈区、常量区、代码区8、C++与C的区别9、struct与class的区别10、struct内存对齐11、new/delete与malloc/free的区别12、内存泄露的情况13、sizeof与strle
2021-06-25 15:56:24
162
原创 2021-06-17【tf2.0学习】第一章&第二章 线性模型实战
TensorFlow2变为动态图优先模式,可以在计算时同时获得计算图与数值结果,在代码调试并实时打印数据。核心功能:GPU并行加速计算,自动梯度(tape.grandient),常用神经网络接口(网络运算函数,常用网络层,模型保存加载等)梯度下降法 线性模型实战(未使用tf,手动求解梯度并更新)# This is a sample Python script.import numpy as np# 均方误差def mse(b,w,points): totalError=0 fo
2021-06-17 11:12:04
156
原创 2021-06-09 OPENGL鼠标控制相机视角旋转
基础概念相机在opengl中的表示1相机位置234相机的正、右、上(相机坐标在世界坐标系中向量表示)相机坐标系上方up与世界坐标系上方向量重合相机R为相机F正向量叉乘世界up相机up为相机F叉乘相机R欧拉角Pitch 俯仰角;Yaw偏航角;Roll滚转角(相机不考虑)角度对应xyz转换关系:Camera::Camera(vec3 position, vec3 target, vec3 worldup){ Position = position; WorldUp = wor
2021-06-09 15:53:56
1724
2
原创 20210511判断字符串是否表示数值
请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。数值(按顺序)可以分成以下几个部分:1若干空格2一个 小数 或者 整数3(可选)一个 ‘e’ 或 ‘E’ ,后面跟着一个 整数4若干空格小数(按顺序)可以分成以下几个部分:(可选)一个符号字符(’+’ 或 ‘-’)下述格式之一:至少一位数字,后面跟着一个点 ‘.’至少一位数字,后面跟着一个点 ‘.’ ,后面再跟着至少一位数字一个点 ‘.’ ,后面跟着至少一位数字整数(按顺序)可以分成以下几个部分:1(可选)一个符号字符(’
2021-05-11 20:38:10
114
原创 20210510剪绳子(动归+贪婪+快速幂)
题目:给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m-1] 。请问 k[0]k[1]…*k[m-1] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。2 <= n <= 58动归 int cuttingRope(int n) { if(n==2) return 1; if(n==3
2021-05-10 11:12:12
65
原创 20210329 LeNet-5数字识别 TensorFlow2.0 MINIST数据集
LeNet-5 数字识别 TensorFlowLeNet-5 由两个卷积层、两个池化层和两个全连接层组成,每个卷积层使用尺寸为5×5(每个滤波器有1个通道)的滤波器,第一层中有6个滤波 器,第 二 层 中 有 16 个 滤 波 器。在 每 次 卷 积 之后,采用 Sigmoid函数进行激活,并且使用2×2的平均池化进行池化操作。# Implementation of LeNet-5 in keras # [LeCun et al., 1998. Gradient based learning app
2021-03-29 20:54:54
309
1
原创 20210329修改jupyter notebook目录路径
命令行activate tensorflow(环境名称)jupyter notebook --generate-config ->得到配置文件地址打开配置文件jupyter_notebook_config.py查找##The directory to use for notebooks and kernels.c.NotebookApp.notebook_dir=’(目标路径)’删去c前#完成...
2021-03-29 09:23:58
69
原创 win10+VS2015+QT5.12.3+opengl小白绘制步骤
win10+VS2015+QT5.12.3+opengl1. VS2015配置好QT5(教程很多不谈)2.创建新QT项目注意勾选opengl模块**3.**新建opengl类4.UI界面提升窗口部件**5.**测试源码glwidget1.h#ifndef GLWIDGET1_H#define GLWIDGET1_H#include <QOpenGLWidget>#include <QOpenGLFunctions>class glwidget1
2020-12-04 14:06:17
574
1
原创 精华Python小课 3天零基础入门 笔记
函数 循环 时间 文件读写def function(list): import time start=time.time() n=len(list)-1 list_max=list[0]; for i in range(n): if list_max<list[i]: list_max=list[i] time.sleep(1) end=time.time() #print(('Running t
2020-11-20 10:28:24
178
原创 OPENGL自学记录(二)
将一中的b站视频听完,超级基础入门的东西。继续上次的。设置顶点着色器//顶点着色器源码存入字符串 动态编译不报错 const char* vertexShaderSource = "#version 410 core\n" "layout(location=0) in vec3 aPos;\n" "out vec4 vertexColor;\n" "void main()\n" "{\n" "vertexColor = vec4(1.0f,0.0f,0.0f, 1.0f);\n"
2020-10-15 20:13:50
131
原创 OPENGL自学记录(一)
计算机图形学OPENGL入门:https://www.bilibili.com/video/BV1px41197A5?p=4b站入口配置库:https://blog.csdn.net/qq_19003345/article/details/76098781初始化glfw/glad代码块void init(){ //initialize glfwInit();//initialize glfw glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); glf
2020-10-12 14:19:45
112
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人