Code:
#include <litec.h>
#include <acknex.h>
#include <default.c>

#define PRAGMA_PATH "shadec"

//include Shade-C
#include "shade-c.h"
#include "common.h"

.....

function main()
{
//wait until after level_load();
vec_set(sky_color, vector(0,0,0));
	vec_set(ambient_color, vector(0,0,0));
	
	camera.size_x = screen_size.x;
	camera.size_y = screen_size.y;
	sc_screen_default = sc_screen_create(camera);
	
	sc_screen_default.settings.forward.enabled = 1; //enable if you need particles or custom materials which can't be rendered in the deferred pipeline
	sc_screen_default.settings.refract.enabled = 1; //enable for refractive effects such as heat haze and glass
	sc_screen_default.settings.hdr.enabled = 1; //enable Bloom/HDR
	sc_screen_default.settings.hdr.lensflare.enabled = 0; //enable for a nice lensflare effect in combination with HDR/Bloom
	sc_screen_default.settings.dof.enabled = 0; //enable Depth of Field Effect
	sc_screen_default.settings.ssao.quality = SC_MEDIUM; //set ssao quality. SC_LOW, SC_MEDIUM, SC_HIGH, SC_ULTRA
	sc_screen_default.settings.ssao.enabled = 1; //enable to activate SSAO
	sc_screen_default.settings.lights.sunShadows = 0; //enable shadows for the sun
	sc_screen_default.settings.lights.sunShadowResolution = 512; //reduce shadow resolution as we are manually setting the shadow range to 5000 and can therefor get away with a small shadowmap
	sc_screen_default.settings.lights.sunPssmSplitWeight = 0.7; //high res near splits, low res far splits
	sc_screen_default.settings.lights.sunShadowRange = 5000; //manually set the shadow range...we don't need realtime shadows in the far distant! If set to 0 (default) shadow range will be set to camera.clip_far
	sc_screen_default.settings.lights.sunShadowBias = 0.001; //set the shadow bias
	sc_screen_default.settings.antialiasing.enabled = 1; //enable antialiasing
	
	//initialize shade-c, use default screen object
	sc_setup(sc_screen_default);
	
	//tweak effect parameters anytime you want
	// -> more info in sc_core.h, in struct SC_SETTINGS
	sc_screen_default.settings.hdr.brightpass = 0.85;
	sc_screen_default.settings.hdr.intensity = 2;
	sc_screen_default.settings.hdr.lensflare.brightpass = 0.0;
	sc_screen_default.settings.hdr.lensflare.intensity = 0.25;
	sc_screen_default.settings.dof.focalPos = 300;
	sc_screen_default.settings.dof.focalWidth = 600;
	sc_screen_default.settings.ssao.radius = 30;	
	sc_screen_default.settings.ssao.intensity = 4;
	sc_screen_default.settings.ssao.selfOcclusion = 0.0004; //we want a bit of self occlusion... lower values result in even more self occlusion
	sc_screen_default.settings.ssao.brightOcclusion = 0.25; //low value: ssao will only be visible in shadows and dark areas. high value: ssao will always be visible. Range: 0-1

}

//this IS a local entity. Place it in an action.
ENTITY* light_child = sc_light_create(vector(my.x, my.y, my.z), my.skill4, vector(my.skill1,my.skill2,my.skill3), SC_LIGHT_SPOT | SC_LIGHT_SPECULAR | SC_LIGHT_SHADOW , vector(my.pan, my.tilt-90, my.roll), my.skill5);



I think this is all you need for lighting if you haven't already looking in the map builder laugh

Last edited by DLively; 06/15/14 14:04.

A8 Pro 8.45.4
YouTube: Create Games For Free
Free Resources: www.CGForFree.com