/*
	Name:	extern.h

	Global variables (most declared in raylab.c)
	--------------------------------------------


    This source-code is part of the RayLab 1.1 package, and it is provided
    for your compiling pleasure.  You may use it, change it, re-compile it
    etc., as long as nobody else but you receive the changes/compilations
    that you have made!

    You may not use any part(s) of this source-code for your own productions
    without the permission from the author of RayLab. Please read the legal
    information found in the users documentation for RayLab for more details.

*/




/* Global variables */

	extern long	PicWidth, PicHeight, RecDepth;
	extern long	NumObjects, NumLights, Num24Images, Num8Images, NumPrimitives;
	extern CAMERA	Camera;
	extern COLOR	BackgroundColor;
	extern COLOR	FogColor;
	extern double	FogDistance;
	extern long	AntiAliasingRec;
	extern double	AntiAliasingThreshold, AntiAliasingJitter;
	extern long	ReqDisplayType;

	extern OBJECT	*ObjectArray[maxobjects];
	extern LIGHT	*LightArray[maxlights];
	extern IMAGE24	*Img24Array[maximages];
	extern IMAGE8	*Img8Array[maximages];

	extern COLOR24	pixelarray[parraysize];
	extern long	picturerendering, RenderedLines;
	extern short	RenderMethod;
	extern short	NeedNoise;
	extern long	RndSeed;

	extern long	OutputFormat;
	extern long	PlaneIntersectionAttempts,PlaneIntersections;
	extern long	SphereIntersectionAttempts,SphereIntersections;
	extern long	EllipsoidIntersectionAttempts,EllipsoidIntersections;
	extern long	TriangleIntersectionAttempts,TriangleIntersections;
	extern long	BoxIntersectionAttempts,BoxIntersections;
	extern long	DiscIntersectionAttempts,DiscIntersections;
	extern long	CylinderIntersectionAttempts,CylinderIntersections;
	extern long	ConeIntersectionAttempts,ConeIntersections;
	extern long	CsgIntersectionAttempts,CsgIntersections;
	extern long	TorusIntersectionAttempts, TorusIntersections;
	extern long	PeakIntersectionAttempts,PeakIntersections;
	extern long	DeoflaskaIntersectionAttempts, DeoflaskaIntersections;
	extern long	ShadowAttempts,ShadowHits,ReflectedRays,FilteredRays;

	extern FILE	*textoutput;
