This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import haxe.io.Bytes; | |
class BytesUtil { | |
/** | |
* Represent a Bytes object as single bits in a string | |
* @param b The bytes | |
* @return A string of '0's and '1's representing the bytes | |
*/ | |
public static function toBits(b:Bytes):String { | |
var s:String = ""; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Copyright (c) 2014 Tilman Schmidt (@KeyMaster_) | |
//Permission is hereby granted, free of charge, to any person obtaining a copy | |
//of this software and associated documentation files (the "Software"), to deal | |
//in the Software without restriction, including without limitation the rights | |
//to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
//copies of the Software, and to permit persons to whom the Software is | |
//furnished to do so, subject to the following conditions: | |
//The above copyright notice and this permission notice shall be included in |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Rotate the camera such that z points up and x to the right | |
var o:Quaternion = new Quaternion().setFromEuler(new Vector().set_xyz(-90, 0, 0).radians()); | |
//Rotate by Arctan(sin(45°)) (grabbed from wikipedia) around x, to get the top-down part | |
var q:Quaternion = new Quaternion().setFromEuler(new Vector().set_xyz(Math.atan(Math.sin(45 * Maths.DEG2RAD)), 0, 0)); | |
//Rotate around z by -45° to get the side-on part | |
var p:Quaternion = new Quaternion().setFromEuler(new Vector().set_xyz(0, 0, -45).radians()); | |
//Combine the rotations and apply to the camera |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package; | |
import luxe.Mesh; | |
import haxe.io.StringInput; | |
import luxe.options.MeshOptions; | |
import luxe.Vector; | |
import phoenix.Batcher; | |
import phoenix.geometry.Geometry; | |
import PlyParser; | |
import phoenix.geometry.Vertex; | |
/** |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//To be used on shadertoy.com | |
//Uses the image at iChannel0 and warps it into polar coordinates | |
void mainImage( out vec4 fragColor, in vec2 fragCoord ) | |
{ | |
vec2 relativePos = fragCoord.xy - (iResolution.xy / 2.0); | |
vec2 polar; | |
polar.y = sqrt(relativePos.x * relativePos.x + relativePos.y * relativePos.y); | |
polar.y /= iResolution.x / 2.0; | |
polar.y = 1.0 - polar.y; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//The source texture that will be transformed | |
uniform sampler2D tex0; | |
//The texture coordinate passed in from the vertex shader (the default luxe vertex shader is suffice) | |
varying vec2 tcoord; | |
//x: width of the texture divided by the radius that represents the top of the image (normally screen width / radius) | |
//y: height of the texture divided by the radius representing the top of the image (normally screen height / radius) | |
uniform vec2 sizeOverRadius; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package ; | |
import luxe.Component; | |
import luxe.Rectangle; | |
import luxe.Vector; | |
class PhysBody { | |
public var rect:Rectangle; | |
public var vel:Vector; | |
public var acc:Vector; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Note: This does _not_ compile, it's just to demonstrate the relevant physics bits | |
class Main extends luxe.Game { | |
var fieldWidth:Int = 60; | |
var fieldDepth:Int = 60; | |
var physTimeStep:Float = 1 / 60; | |
var physTimeCounter:Float = 0; | |
var springK:Float = 100; | |
var springDampening:Float = 0.00; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var screenShape = new Polygon(Polygon.rect(0, 0, Luxe.screen.w, Luxe.screen.h, true)); | |
screenShape.fluidEnabled = true; | |
//Density of 0.3, Viscosity of 3. These are values you just have to experiment with until it feels right | |
screenShape.fluidProperties = new FluidProperties(0.3, 3); | |
//It's important to set the collisionMask (second parameter) to 0 here, | |
//so the shape doesn't collide with anything (we want everything to just move through it) | |
screenShape.filter = new InteractionFilter(1, 0); | |
//Set up a body holding the shape and add it to the space | |
var screenBody = new Body(BodyType.STATIC); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* Author: Richard Lord | |
* Copyright (c) Big Room Ventures Ltd. 2007 | |
* Version: 1.0.2 | |
* Modified and extended by Tilman Schmidt (@KeyMaster_) | |
* - Fixed key buffer size to contain enough bits for all keys | |
* - Added buffering for entity component system framework | |
* - Added keyUp and keyDown lookups | |
* | |
* Licence Agreement |
OlderNewer