making maps is really really fun t.co/g6vkPTIlvl (Today)

@TommyRefenes YAYE YAAAAAAAAYE (Today)

Prototyping some kinda map and level loading system in Otter for who knows what t.co/es3cUUXJCQ (Today)

@theBanov see you soon! :D (Today)

@torahhorse the xXSSJ4GotenksXx life (Today)

@Froodjakle nice! looking forward to it ;D (Today)

@gabetelepak jesus christ that sounds amazing *waits for MLG pro video montage* (Yesterday)

RT @TrentKusters: After 4.5 years Armello's finally out! A GoT x Ghibli board game brought to life! RT pls <3 t.co/BA6KMtjxsm http… (Yesterday)

@DiscordGames @RoboDodd I really enjoyed the new build at PAX :O Played through 3 times. (Yesterday)

@mcclure111 T SPIN CANCEL INTO DOUBLE TETRIS (Yesterday)

My feedback for all games at PAX: I want to cancel all moves into other moves and do crazy execution tricks let me do this in every game thx (Yesterday)

@TomFulp @askiisoft @PuffballsUnited I would do that. Just gotta dust off the project and remember how actionscript works. (Yesterday)

@TomFulp @PuffballsUnited <3 <3 <3 (Yesterday)

@MattThorson looks like an avocado milkshake (Yesterday)

RT @MattThorson: I’m testing one last, new item for the TowerFall Editor update. This chalice fills up with your... t.co/4sUA2VqfML (Yesterday)

@ChevyRay @legobutts @djcoreynolan it was PAX and avocado milkshakes that did us in rip in peace (Yesterday)

RT @ZackBellGames: Slipped through the cracks, but an INK postmortem is up on @gamasutra. t.co/N7gT6ymPSh Buy it on Steam: t.… (Yesterday)

RT @saint11: I made the smallest pixel font I could think of, and it's free. Like, public domain free t.co/2hs4ygCXej t.co/wL… (2 days ago)

RT @LunarRayGames: Hurray! Timespinner now has a Coming Soon™ page on Steam :D t.co/eUxZEJ8JYO t.co/GqDmaCfypV (2 days ago)

@ChevyRay @MllePilgrim @djcoreynolan @MattThorson leaving on sep 9th. Getting into the train station at 2pm today ;D (2 days ago)

follow
search

2014 - 4 - 16 / 4:58 pm / general

Dev Log: Quick Lighting Test

Dev Log: Quick Lighting Test

As a quick experiment I wanted to see how Otter would be equipped to handle a simple lighting set up. The basic set up is just a big render texture that is filled with a dark color with a blend mode set to multiply. Then light is rendered to the render texture with a blend mode of additive. The result is a layer of shadow that can have light rendered to it.

Image

The code for this set up right now is pretty straight forward as well. I'm using a black and white image for the light. Just a black rectangle with a white radial gradient in the center.

Here's some sample code to show how this effect is achieved with Otter!

//set up the surface
public Surface SurfaceLighting = new Surface(Game.Instance.Width, Game.Instance.Height, new Color("379")) {
Blend = BlendMode.Multiply
};

//set up the light
public Image ImageLight = new Image(Assets.ImageLight1) {
Blend = BlendMode.Add
};

//add the surface to an entity to render it
//this happens in an object's initialization
AddGraphicGUI(SurfaceLighting);

//render light to the surface
//this happens in a Render() function
Draw.SetTarget(SurfaceLighting);
ImageLight.Color = Color.White;
Draw.Graphic(ImageLight, Input.MouseX, Input.MouseY);
ImageLight.Color = Color.Red;
Draw.Graphic(ImageLight, Input.MouseX + 500, Input.MouseY);
ImageLight.Color = Color.Blue;
Draw.Graphic(ImageLight, Input.MouseX - 500, Input.MouseY);
Draw.ResetTarget();

4 Comments
Avatar

2014 - 4 - 17 12:29 PM

TodesBrot

Did you cut parts of the code? Because it seems really odd to me that a function contains public fields.

Avatar

2014 - 4 - 17 1:30 PM

Kyle

Yes, hence the comments.

Avatar

2014 - 4 - 17 2:59 PM

TodesBrot

...goddammit I overlooked that

Avatar

2014 - 4 - 18 7:39 PM

Kyle

;D

Avatar

Post your comment!

POST COMMENT

about

About

Hi there, my name is Kyle, and I'm a kid disguised as a grown up. I'm making video games and living the indie game developer life in Tempe, Arizona. Here you will find my thoughts, games, websites, doodles, and other stuff like that. I worked on Snapshot, Offspring Fling, and a whole bunch of other games. I also created and maintain Otter, a 2d game making framework. If you want to get a hold of me use the form on the bottom of the page, leave a comment, or just tweet at me. I try to post three times a week. Thanks for stoppin' by! You're the coolest.

blog stuff

categories

tags

archives

facebook

videos

Do you want to make a Let's Play of one of my games, or a just a video featuring footage of my games? You have my full permission to do so! Even if you are monetizing your videos, you still have my full permission to use any footage from any of my games. Go for it!

contact

Your message has been sent! Thanks :)
SEND MESSAGE