Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package;
- import luxe.Draw;
- import luxe.Input;
- import luxe.Sprite;
- import luxe.Color;
- import luxe.Vector;
- import phoenix.Shader;
- import phoenix.Texture;
- import snow.utils.UInt8Array;
- class Main extends luxe.Game
- {
- var block:Sprite;
- var threshholds:Array<Float> = [0, 255 * 0.2, 255 * 0.3, 255 * 0.5, 255 * 0.8, 255 * 0.9, 255];
- override function ready() {
- genTex();
- block = new Sprite( {
- name: 'a sprite',
- pos: Luxe.screen.mid,
- texture: Luxe.resources.find_texture("perlin")
- });
- }
- function genTex()
- {
- trace("genTex");
- var _2darray:Array<Array<Int>> = PerlinNoise.makePerlinNoise(256, 128, 0, 0, 0, Std.int(Math.random() * 2000000));
- for (i in 0...128)
- {
- var newA = new Array<Int>();
- for (ii in 0...256)
- {
- newA[ii] = _2darray[i][ii];
- }
- _2darray[i] = newA;
- for (x in 0...newA.length)
- {
- var cur = newA[x];
- var col = -(new Color().rgb(cur).r) * 255;
- for (t in 0...threshholds.length-1)
- {
- if (col < threshholds[t+1])
- {
- newA[x] = Std.int(threshholds[t]);
- break;
- }
- }
- }
- }
- var pixels = Util.array2dToUInt8Array(_2darray);
- Texture.load_from_pixels("perlin", 256, 128, pixels);
- }
- override function onkeyup(e:KeyEvent) {
- if(e.keycode == Key.escape)
- Luxe.shutdown();
- if (e.keycode == Key.key_r)
- {
- genTex();
- block.texture = Luxe.resources.find_texture("perlin");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement