Commit f5e6ef4d authored by bpaulwitz's avatar bpaulwitz

mir ist ein netter, aber unnoetiger Algorithmus eingefallen

parent ab535ae3
\relax
\@writefile{toc}{\contentsline {section}{\numberline {1}Aufbau}{1}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {1.1}Camera}{1}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {1.2}Scene}{1}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {1.3}Sphere}{1}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {1.4}Material}{1}\protected@file@percent }
\providecommand\hyper@newdestlabel[2]{}
\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument}
\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined
\global\let\oldcontentsline\contentsline
\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}}
\global\let\oldnewlabel\newlabel
\gdef\newlabel#1#2{\newlabelxx{#1}#2}
\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}}
\AtEndDocument{\ifx\hyper@anchor\@undefined
\let\contentsline\oldcontentsline
\let\newlabel\oldnewlabel
\fi}
\fi}
\global\let\hyper@last\relax
\gdef\HyperFirstAtBeginDocument#1{#1}
\providecommand\HyField@AuxAddToFields[1]{}
\providecommand\HyField@AuxAddToCoFields[2]{}
\@writefile{toc}{\contentsline {section}{\numberline {1}Aufbau}{1}{section.1}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {1.1}Camera}{1}{subsection.1.1}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {1.2}Scene}{1}{subsection.1.2}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {1.3}Sphere}{1}{subsection.1.3}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {1.4}Material}{1}{subsection.1.4}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {2}Formeln}{1}{section.2}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {3}Algorithmen}{1}{section.3}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}FakedFizzleFade}{1}{subsection.3.1}\protected@file@percent }
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Arch Linux) (preloaded format=pdflatex 2019.9.18) 5 OCT 2019 17:52
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Arch Linux) (preloaded format=pdflatex 2019.9.18) 5 OCT 2019 18:52
entering extended mode
restricted \write18 enabled.
%&-line parsing enabled.
......@@ -51,21 +51,151 @@ Package: ifxetex 2010/09/12 v0.6 Provides ifxetex conditional
\Gm@layouthoffset=\dimen109
\Gm@layoutvoffset=\dimen110
\Gm@dimlist=\toks15
)
(/usr/share/texmf-dist/tex/latex/hyperref/hyperref.sty
Package: hyperref 2018/11/30 v6.88e Hypertext links for LaTeX
(/usr/share/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty
Package: hobsub-hyperref 2016/05/16 v1.14 Bundle oberdiek, subset hyperref (HO)
(/usr/share/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty
Package: hobsub-generic 2016/05/16 v1.14 Bundle oberdiek, subset generic (HO)
Package: hobsub 2016/05/16 v1.14 Construct package bundles (HO)
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO)
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO)
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO)
Package ifluatex Info: LuaTeX not detected.
Package hobsub Info: Skipping package `ifvtex' (already loaded).
Package: intcalc 2016/05/16 v1.2 Expandable calculations with integers (HO)
Package hobsub Info: Skipping package `ifpdf' (already loaded).
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO)
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO)
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO)
Package: pdftexcmds 2018/09/10 v0.29 Utility functions of pdfTeX for LuaTeX (HO
)
Package pdftexcmds Info: LuaTeX not detected.
Package pdftexcmds Info: \pdf@primitive is available.
Package pdftexcmds Info: \pdf@ifprimitive is available.
Package pdftexcmds Info: \pdfdraftmode found.
Package: pdfescape 2016/05/16 v1.14 Implements pdfTeX's escape features (HO)
Package: bigintcalc 2016/05/16 v1.4 Expandable calculations on big integers (HO
)
Package: bitset 2016/05/16 v1.2 Handle bit-vector datatype (HO)
Package: uniquecounter 2016/05/16 v1.3 Provide unlimited unique counter (HO)
)
Package hobsub Info: Skipping package `hobsub' (already loaded).
Package: letltxmacro 2016/05/16 v1.5 Let assignment for LaTeX macros (HO)
Package: hopatch 2016/05/16 v1.3 Wrapper for package hooks (HO)
Package: xcolor-patch 2016/05/16 xcolor patch
Package: atveryend 2016/05/16 v1.9 Hooks at the very end of document (HO)
Package atveryend Info: \enddocument detected (standard20110627).
Package: atbegshi 2016/06/09 v1.18 At begin shipout hook (HO)
Package: refcount 2016/05/16 v3.5 Data extraction from label references (HO)
Package: hycolor 2016/05/16 v1.8 Color options for hyperref/bookmark (HO)
)
(/usr/share/texmf-dist/tex/latex/oberdiek/auxhook.sty
Package: auxhook 2016/05/16 v1.4 Hooks for auxiliary files (HO)
)
(/usr/share/texmf-dist/tex/latex/oberdiek/kvoptions.sty
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO)
)
\@linkdim=\dimen111
\Hy@linkcounter=\count91
\Hy@pagecounter=\count92
(/usr/share/texmf-dist/tex/latex/hyperref/pd1enc.def
File: pd1enc.def 2018/11/30 v6.88e Hyperref: PDFDocEncoding definition (HO)
Now handling font encoding PD1 ...
... no UTF-8 mapping file for font encoding PD1
)
\Hy@SavedSpaceFactor=\count93
(/usr/share/texmf-dist/tex/latex/latexconfig/hyperref.cfg
File: hyperref.cfg 2002/06/06 v1.2 hyperref configuration of TeXLive
)
Package hyperref Info: Hyper figures OFF on input line 4519.
Package hyperref Info: Link nesting OFF on input line 4524.
Package hyperref Info: Hyper index ON on input line 4527.
Package hyperref Info: Plain pages OFF on input line 4534.
Package hyperref Info: Backreferencing OFF on input line 4539.
Package hyperref Info: Implicit mode ON; LaTeX internals redefined.
Package hyperref Info: Bookmarks ON on input line 4772.
\c@Hy@tempcnt=\count94
(/usr/share/texmf-dist/tex/latex/url/url.sty
\Urlmuskip=\muskip10
Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc.
)
LaTeX Info: Redefining \url on input line 5125.
\XeTeXLinkMargin=\dimen112
\Fld@menulength=\count95
\Field@Width=\dimen113
\Fld@charsize=\dimen114
Package hyperref Info: Hyper figures OFF on input line 6380.
Package hyperref Info: Link nesting OFF on input line 6385.
Package hyperref Info: Hyper index ON on input line 6388.
Package hyperref Info: backreferencing OFF on input line 6395.
Package hyperref Info: Link coloring OFF on input line 6400.
Package hyperref Info: Link coloring with OCG OFF on input line 6405.
Package hyperref Info: PDF/A mode OFF on input line 6410.
LaTeX Info: Redefining \ref on input line 6450.
LaTeX Info: Redefining \pageref on input line 6454.
\Hy@abspage=\count96
\c@Item=\count97
\c@Hfootnote=\count98
)
Package hyperref Info: Driver (autodetected): hpdftex.
(/usr/share/texmf-dist/tex/latex/hyperref/hpdftex.def
File: hpdftex.def 2018/11/30 v6.88e Hyperref driver for pdfTeX
\Fld@listcount=\count99
\c@bookmark@seq@number=\count100
(/usr/share/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty
Package: rerunfilecheck 2016/05/16 v1.8 Rerun checks for auxiliary files (HO)
Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2
82.
)
\Hy@SectionHShift=\skip43
)
(/usr/share/texmf-dist/tex/latex/xcolor/xcolor.sty
Package: xcolor 2016/05/11 v2.12 LaTeX color extensions (UK)
(/usr/share/texmf-dist/tex/latex/graphics-cfg/color.cfg
File: color.cfg 2016/01/02 v1.6 sample color configuration
)
Package xcolor Info: Driver file: pdftex.def on input line 225.
(/usr/share/texmf-dist/tex/latex/graphics-def/pdftex.def
File: pdftex.def 2018/01/08 v1.0l Graphics/color driver for pdftex
)
Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1348.
Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1352.
Package xcolor Info: Model `RGB' extended on input line 1364.
Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1366.
Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1367.
Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1368.
Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1369.
Package xcolor Info: Model `Gray' substituted by `gray' on input line 1370.
Package xcolor Info: Model `wave' substituted by `hsb' on input line 1371.
) (./doc.aux)
\openout1 = `doc.aux'.
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 12.
LaTeX Font Info: ... okay on input line 12.
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 12.
LaTeX Font Info: ... okay on input line 12.
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 12.
LaTeX Font Info: ... okay on input line 12.
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 12.
LaTeX Font Info: ... okay on input line 12.
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 12.
LaTeX Font Info: ... okay on input line 12.
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 12.
LaTeX Font Info: ... okay on input line 12.
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 14.
LaTeX Font Info: ... okay on input line 14.
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 14.
LaTeX Font Info: ... okay on input line 14.
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 14.
LaTeX Font Info: ... okay on input line 14.
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 14.
LaTeX Font Info: ... okay on input line 14.
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 14.
LaTeX Font Info: ... okay on input line 14.
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 14.
LaTeX Font Info: ... okay on input line 14.
LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 14.
LaTeX Font Info: ... okay on input line 14.
*geometry* driver: auto-detecting
*geometry* detected driver: pdftex
......@@ -101,32 +231,78 @@ LaTeX Font Info: ... okay on input line 12.
* \@reversemarginfalse
* (1in=72.27pt=25.4mm, 1cm=28.453pt)
\AtBeginShipoutBox=\box27
Package hyperref Info: Link coloring OFF on input line 14.
(/usr/share/texmf-dist/tex/latex/hyperref/nameref.sty
Package: nameref 2016/05/21 v2.44 Cross-referencing by name of section
(/usr/share/texmf-dist/tex/generic/oberdiek/gettitlestring.sty
Package: gettitlestring 2016/05/16 v1.5 Cleanup title references (HO)
)
\c@section@level=\count101
)
LaTeX Info: Redefining \ref on input line 14.
LaTeX Info: Redefining \pageref on input line 14.
LaTeX Info: Redefining \nameref on input line 14.
(./doc.out)
(./doc.out)
\@outlinefile=\write3
\openout3 = `doc.out'.
(/usr/share/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
[Loading MPS to PDF converter (version 2006.09.02).]
\scratchcounter=\count102
\scratchdimen=\dimen115
\scratchbox=\box28
\nofMPsegments=\count103
\nofMParguments=\count104
\everyMPshowfont=\toks16
\MPscratchCnt=\count105
\MPscratchDim=\dimen116
\MPnumerator=\count106
\makeMPintoPDFobject=\count107
\everyMPtoPDFconversion=\toks17
)
LaTeX Font Info: External font `cmex10' loaded for size
(Font) <12> on input line 16.
LaTeX Font Info: External font `cmex10' loaded for size
(Font) <8> on input line 16.
LaTeX Font Info: External font `cmex10' loaded for size
(Font) <12> on input line 13.
(Font) <6> on input line 16.
LaTeX Font Info: External font `cmex10' loaded for size
(Font) <8> on input line 13.
(Font) <7> on input line 37.
LaTeX Font Info: External font `cmex10' loaded for size
(Font) <6> on input line 13.
[1
(Font) <5> on input line 37.
Package atveryend Info: Empty hook `BeforeClearDocument' on input line 39.
[1
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] (./doc.aux) )
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}]
Package atveryend Info: Empty hook `AfterLastShipout' on input line 39.
(./doc.aux)
Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 39.
Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 39.
Package rerunfilecheck Info: File `doc.out' has not changed.
(rerunfilecheck) Checksum: 133DB233D94C5D4DFB31F66454928474;414.
Package atveryend Info: Empty hook `AtVeryVeryEnd' on input line 39.
)
Here is how much of TeX's memory you used:
761 strings out of 492623
10138 string characters out of 6135669
76326 words of memory out of 5000000
4729 multiletter control sequences out of 15000+600000
7933 words of font info for 28 fonts, out of 8000000 for 9000
5584 strings out of 492623
80728 string characters out of 6135669
179079 words of memory out of 5000000
9483 multiletter control sequences out of 15000+600000
8101 words of font info for 29 fonts, out of 8000000 for 9000
1141 hyphenation exceptions out of 8191
24i,6n,32p,130b,187s stack positions out of 5000i,500n,10000p,200000b,80000s
</usr/share/t
exmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/texmf-dist/font
s/type1/public/amsfonts/cm/cmr10.pfb></usr/share/texmf-dist/fonts/type1/public/
amsfonts/cm/cmr12.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmr
17.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmti10.pfb>
Output written on doc.pdf (1 page, 57344 bytes).
28i,6n,35p,683b,323s stack positions out of 5000i,500n,10000p,200000b,80000s
</usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/
texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb></usr/share/texmf-dist/font
s/type1/public/amsfonts/cm/cmr12.pfb></usr/share/texmf-dist/fonts/type1/public/
amsfonts/cm/cmr17.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cms
y10.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmti10.pfb></usr/
share/texmf-dist/fonts/type1/public/amsfonts/cm/cmtt10.pfb>
Output written on doc.pdf (1 page, 91730 bytes).
PDF statistics:
28 PDF objects out of 1000 (max. 8388607)
19 compressed objects within 1 object stream
0 named destinations out of 1000 (max. 500000)
1 words of extra memory for PDF output out of 10000 (max. 10000000)
77 PDF objects out of 1000 (max. 8388607)
66 compressed objects within 1 object stream
10 named destinations out of 1000 (max. 500000)
65 words of extra memory for PDF output out of 10000 (max. 10000000)
\BOOKMARK [1][-]{section.1}{Aufbau}{}% 1
\BOOKMARK [2][-]{subsection.1.1}{Camera}{section.1}% 2
\BOOKMARK [2][-]{subsection.1.2}{Scene}{section.1}% 3
\BOOKMARK [2][-]{subsection.1.3}{Sphere}{section.1}% 4
\BOOKMARK [2][-]{subsection.1.4}{Material}{section.1}% 5
\BOOKMARK [1][-]{section.2}{Formeln}{}% 6
\BOOKMARK [1][-]{section.3}{Algorithmen}{}% 7
\BOOKMARK [2][-]{subsection.3.1}{FakedFizzleFade}{section.3}% 8
No preview for this file type
\documentclass[]{article}
\usepackage[margin=0.5in]{geometry}
\usepackage[hidelinks]{hyperref}
\usepackage{xcolor}
%opening
\title{Dokumentation Raytracer-Projekt für Multimedia}
......@@ -24,4 +26,14 @@
\subsection{Material}
\textit{Beschreibt die Oberfläche eines Szenenobjekts.}
\section{Formeln}
\section{Algorithmen}
\textcolor{gray}{
\subsection{FakedFizzleFade}
Kann genutzt werden, um deterministisch jeden Pixel im Bild einigermaßen gleichmäßig verteilt genau einmal zu rendern. $\rightarrow$ macht eventuell flüssigere Bewegung möglich?\\
Das Spiel Wolfenstein 3D hat einen sogenannten FizzleFade effekt genutzt, um jeden Pixel im Bild genau einmal pseudo-random zu wählen und zu Färben (\textcolor{blue}{\url{http://fabiensanglard.net/fizzlefade/index.php}}). Man kann das umständlicher für beliebige Auflösungen simulieren, indem man einen Array der Länge Length = Bildhöhe $\cdot$ Bildbreite erstellt und mit zufälligen Werten initialisiert. Der Array wird sortiert und ein zweiter der gleichen Länge mit dem jeweiligen Index als Inhalt angelegt, welcher auf die gleiche Art wie der 1. sortiert wird. Nun kann man beim rendern des Bildes durch den 2. Array iterieren und den jeweiligen Ray casten.\\
\textcolor{red}{$\rightarrow$ unnötig, da wir sowieso im Shader die Rays parallel casten}
}
\end{document}
\ No newline at end of file
Also ich würde vorschlagen, dass wir mit OpenGL ein Kameraobjekt erstellen, von dem wir die Rays casten. Am Anfang würde ich es erst mal ganz klassisch nur mit Kugeln implementieren, weil es leicht ist und man gut testen kann, ob das Raytracing und darstellen funktioniert. Später kann man ja u.U. auch noch auf Dreiecke in der Szene testen. Zudem sollten wir vermutlich Materials (angefangen nur mit Farbe, Rest später) für die Kugeln implementieren.
Die Optionen für den Raytracer (Resolution, 'Anzahl Sprünge des Traces', Max. Dist. Trace, etc.) würde ich vielleicht in ein .h file als Preprozessor Defines speichern? -> Leicht zu bearbeiten
Wenn wir das geschafft haben, können wir andere Sachen ausprobieren. Wie gesagt, Dreiecke wären eine Option (vielleicht sogar mit bounding volumes?), Änderung der Kamera von der Console (oder wenn wir ein paar Rays weniger berechnen mit Pfeiltasten) aus, Materialien mit durchsichtigkeit erweitern oder Lichtquellen hinzufügen.
Wenn wir das geschafft haben, können wir andere Sachen ausprobieren. Wie gesagt, Dreiecke wären eine Option (vielleicht sogar mit bounding volumes?), Änderung der Kamera von der Console (oder wenn wir ein paar Rays weniger berechnen mit Pfeiltasten - fizzlefade!) aus, Materialien mit durchsichtigkeit erweitern oder Lichtquellen hinzufügen.
Wir sollten uns mal zusammensetzen und das ganze ein bisschen mehr im Detail planen, sagt mal Bescheid, wann ihr Zeit habt.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment