Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if(pixelcolor!=null)
- {
- g.fillRect(x,y,PixelSize,PixelSize);
- LightSource light = getNearestLightSource(pixelpoint);
- light.Brightness =(float) clamp((float)Math.sin(tick)*1,0.0f,1.0f);
- int red = (int) (pixelcolor.getRed());
- int green = (int) (pixelcolor.getGreen());
- int blue = (int) (pixelcolor.getBlue());
- if(light!=null)
- {
- float lightbrightness = light.Brightness;
- float distance_from_lightsource = (float) pixelpoint.distance(light.location);
- float brightperc = (1-(clamp(distance_from_lightsource/light.Range,0.0f,1.0f)))*lightbrightness;
- red = (int) clamp((red*brightperc*lightbrightness),0.0f,255.0f);
- green = (int) clamp((green*brightperc*lightbrightness),0.0f,255.0f);
- blue = (int) clamp((blue*brightperc*lightbrightness),0.0f,255.0f);
- g.setColor(new Color(red,green,blue));
- }
- else // There is no light nearby
- {
- g.setColor(Color.BLACK);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement