This repository has been archived by the owner on Jan 27, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmain.tex
141 lines (132 loc) · 6.7 KB
/
main.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
\documentclass[a4paper,12pt]{book}
\usepackage[T1]{fontenc}
\usepackage[top=2cm,bottom=4cm,left=2cm,right=2cm]{geometry}
\usepackage{graphicx}
\usepackage{pdfpages}
\usepackage{fancyhdr}
\usepackage{color}
\usepackage{listings}
\usepackage[hidelinks]{hyperref}
\usepackage{float}
\usepackage{amsmath}
\usepackage{tocloft,pgffor}
\usepackage{blindtext}
\usepackage{subcaption}
\usepackage{graphicx}
\usepackage{parskip}
\setlength{\parskip}{\baselineskip}%
\setlength{\parindent}{18pt}%
\DeclareMathSizes{12}{20}{16}{16}
\definecolor{commentcolor}{RGB}{163, 226, 138}
\definecolor{keywordcolor}{RGB}{156, 149, 235}
\definecolor{typecolor}{RGB}{193, 145, 255}
\definecolor{stringcolor}{RGB}{201, 162, 109}
\definecolor{backgroundcolor}{RGB}{40, 40, 40}
\definecolor{alertcolor}{RGB}{251, 237, 187}
\lstdefinestyle{csharp}{
language=csh,
basicstyle=\color{white}\footnotesize\ttfamily,
numbers=left,
numberstyle=\color{white}\tiny,
numbersep=5pt,
tabsize=1,
extendedchars=true,
breaklines=true,
stringstyle=\color{stringcolor}\ttfamily,
showspaces=false,
showtabs=false,
xleftmargin=17pt,
framexleftmargin=17pt,
framexrightmargin=5pt,
framexbottommargin=4pt,
commentstyle=\color{commentcolor},
morecomment=[l]{//},
morecomment=[s]{/*}{*/},
showstringspaces=false,
morekeywords={ abstract, event, new, struct,
as, explicit, null, switch,
base, extern, object, this,
bool, false, operator, throw,
break, finally, out, true,
byte, fixed, override, try,
case, float, params, typeof,
catch, for, private, uint,
char, foreach, protected, ulong,
checked, goto, public, unchecked,
class, if, readonly, unsafe,
const, implicit, ref, ushort,\usepackage{titlesec}
continue, in, return, using,
decimal, int, sbyte, virtual,
default, interface, sealed, volatile,
delegate, internal, short, void,
do, is, sizeof, while,
double, lock, stackalloc,
else, long, static,
enum, namespace, string},
keywordstyle=\color{keywordcolor},
identifierstyle=\color{typecolor},
backgroundcolor=,
}
\lstdefinelanguage{GLSL}{
basicstyle=\color{white}\footnotesize\ttfamily,
numbers=left,
numberstyle=\color{white}\tiny,
numbersep=5pt,
tabsize=1,
extendedchars=true,
breaklines=true,
stringstyle=\color{stringcolor}\ttfamily,
showspaces=false,
showtabs=false,
xleftmargin=17pt,
framexleftmargin=17pt,
framexrightmargin=5pt,
framexbottommargin=4pt,
commentstyle=\color{commentcolor},
alsoletter={\#},
morekeywords=[1]{
attribute,bool,break,bvec2,bvec3,bvec4,case,centroid,const,continue,default,discard,do,else,false,flat,float,for,highp,if,in,inout,int,invariant,isampler1D,isampler1DArray,isampler2D,isampler2DArray,isampler2DMS,isampler2DMSArray,isampler2DRect,isampler3D,isamplerBuffer,isamplerCube,ivec2,ivec3,ivec4,layout,lowp,mat2,mat2x2,mat2x3,mat2x4,mat3,mat3x2,mat3x3,mat3x4,mat4,mat4x2,mat4x3,mat4x4,mediump,noperspective,out,precision,return,sampler1D,sampler1DArray,sampler1DArrayShadow,sampler1DShadow,sampler2D,sampler2DArray,sampler2DArrayShadow,sampler2DMS,sampler2DMSArray,sampler2DRect,sampler2DRectShadow,sampler2DShadow,sampler3D,samplerBuffer,samplerCube,samplerCubeShadow,smooth,struct,switch,true,uint,uniform,usampler1D,usampler1DArray,usampler2D,usampler2DArray,usampler2DMS,usampler2DMSArray,usampler2DRect,usampler3D,usamplerBuffer,usamplerCube,uvec2,uvec3,uvec4,varying,vec2,vec3,vec4,void,while
},
morekeywords=[2]{
abs,acos,acosh,all,any,asin,asinh,atan,atan,atanh,ceil,clamp,cos,cosh,cross,degrees,determinant,dFdx,dFdy,distance,dot,EmitVertex,EndPrimitive,equal,exp,exp2,faceforward,floatBitsToInt,floatBitsToUint,floor,fract,fwidth,greaterThan,greaterThanEqual,intBitsToFloat,inverse,inversesqrt,isinf,isnan,length,lessThan,lessThanEqual,log,log2,matrixCompMult,max,min,mix,mod,modf,noise1,noise2,noise3,noise4,normalize,not,notEqual,outerProduct,pow,radians,reflect,refract,round,roundEven,shadow1D,shadow1DLod,shadow1DProj,shadow1DProjLod,shadow2D,shadow2DLod,shadow2DProj,shadow2DProjLod,sign,sin,sinh,smoothstep,sqrt,step,tan,tanh,texelFetch,texelFetchOffset,texture,texture1D,texture1DProj,texture1DProjLod,texture2D,texture2DLod,texture2DProj,texture2DProjLod,texture3D,texture3DLod,texture3DProj,texture3DProjLod,textureCube,textureCubeLod,textureGrad,textureGradOffset,textureLod,textureLodOffset,textureOffset,textureProj,textureProjGrad,textureProjGradOffset,textureProjLod,textureProjLodOffset,textureProjOffset,textureSize,transpose,trunc,uintBitsToFloat
},
morekeywords=[3]{
\#version,core,gl_ClipDistance,gl_ClipDistance,gl_ClipVertex,gl_DepthRange,gl_FragColor,gl_FragCoord,gl_FragData,gl_FragDepth,gl_FrontFacing,gl_InstanceID,gl_Layer,gl_MaxClipDistances,gl_MaxCombinedTextureImageUnits,gl_MaxDrawBuffers,gl_MaxDrawBuffers,gl_MaxFragmentInputComponents,gl_MaxFragmentUniformComponents,gl_MaxGeometryInputComponents,gl_MaxGeometryOutputComponents,gl_MaxGeometryOutputVertices,gl_MaxGeometryOutputVertices,gl_MaxGeometryTextureImageUnits,gl_MaxGeometryTotalOutputComponents,gl_MaxGeometryUniformComponents,gl_MaxGeometryVaryingComponents,gl_MaxTextureImageUnits,gl_MaxVaryingComponents,gl_MaxVaryingFloats,gl_MaxVertexAttribs,gl_MaxVertexOutputComponents,gl_MaxVertexTextureImageUnits,gl_MaxVertexUniformComponents,gl_PerVertex,gl_PointCoord,gl_PointSize,gl_Position,gl_PrimitiveID,gl_VertexID
},
morecomment=[l]{//},
morecomment=[s]{/*}{*/},
keywordstyle=\color{keywordcolor},
identifierstyle=\color{typecolor},
backgroundcolor=,
}
\setcounter{tocdepth}{3}
\renewcommand{\chaptername}{\textsf{Chapter}}
\renewcommand{\cftpartfont}{\normalfont\sffamily\bfseries}
\renewcommand{\cftchapfont}{\normalfont\large\itshape}
\renewcommand{\cftsecfont}{\normalfont\slshape}
\renewcommand{\cftsubsecfont}{\normalfont\itshape}
\renewcommand{\cftsubsubsecfont}{\normalfont\small}
\renewcommand{\contentsname}{\textsf{Table of Contents}}
\renewcommand\thechapter{\textsf{\arabic{chapter}}}
\renewcommand\thesection{\textsf{\arabic{section}}}
\renewcommand\thesubsection{\textsf{\thesection.\arabic{subsection}}}
\begin{document}
\includepdf[width=\paperwidth,height=\paperheight]{images/cover.png}
\newpage
\tableofcontents
%\include{chapters/example}
\include{chapters/chap1_Introduction}
\include{chapters/chap2_MathematicsPrinciples}
\include{chapters/chap3_GraphicsPrinciples}
\include{chapters/chap4_InitialSetup}
\include{chapters/chap5_Shaders}
\include{chapters/chap6_Pipelines}
\include{chapters/chap7_RenderPasses}
\include{chapters/chap8_Drawing}
\include{chapters/chap9_ProjectGuidance}
\include{chapters/chap10_Textures}
\include{chapters/chap11_AdvancedTextures}
\include{chapters/chap12_Mapping}
\include{chapters/chap13_Instancing}
\include{chapters/chap14_Tessellation}
\end{document}