diff options
-rw-r--r-- | .gitignore | 6 | ||||
-rw-r--r-- | Makefile | 26 | ||||
-rw-r--r-- | README.md | 6 | ||||
-rw-r--r-- | graytrace.cpp | 3 |
4 files changed, 34 insertions, 7 deletions
@@ -1,5 +1,7 @@ .DS_Store -b.sh graytrace -*.png +*.o lodepng.h +lodepng.cpp + +*.png diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..230ae9e --- /dev/null +++ b/Makefile @@ -0,0 +1,26 @@ +CXX = g++ +CXXFLAGS = -Wall -O2 + +.PHONY: all clean remake + +all: graytrace + +clean: + rm -f graytrace graytrace.o lodepng.o + +remake: clean all + + +graytrace: lodepng.o graytrace.cpp graytrace.o + $(CXX) $(CXXFLAGS) graytrace.o lodepng.o -o graytrace + +lodepng.o: lodepng.cpp lodepng.h + $(CXX) $(CXXFLAGS) -c -o lodepng.o lodepng.cpp + +lodepng.cpp: + @if ! test -e lodepng.cpp; then \ + /bin/echo -n Downloading lodepng...\ ; \ + curl -s 'https://raw.githubusercontent.com/lvandeve/lodepng/master/lodepng.cpp' >lodepng.cpp; \ + curl -s 'https://raw.githubusercontent.com/lvandeve/lodepng/master/lodepng.h' >lodepng.h; \ + /bin/echo done.; \ + fi @@ -5,7 +5,5 @@ A simple, experimental raytracer that doesn't support colours. I made this in my spare time and will probably continue to add features. Or not. I don't know. -It needs lodepng (as found on [lodev.org](http://lodev.org/lodepng/)). -Just compile with `lodepng.cpp` and `lodepng.h` in the same folder as the source and pass both `graytrace.cpp` and `lodepng.cpp` as arguments to the compiler. - -_- Tom Smeding_ +It uses lodepng (as found on [lodev.org](http://lodev.org/lodepng/)). +Invoking `make` on the command line should be enough; if necessary, it will download lodepng automatically. diff --git a/graytrace.cpp b/graytrace.cpp index b74d387..c09a202 100644 --- a/graytrace.cpp +++ b/graytrace.cpp @@ -123,7 +123,8 @@ public: class Primitive{ public: - bool isLight=false; + bool isLight; + Primitive(void):isLight(false){} virtual ~Primitive(void){} /* A line is represented by the formula: X = P + D * t |