Skip to content

Instantly share code, notes, and snippets.

Avatar

Jon Renner jrenner

  • Minneapolis, Minnesota, USA
View GitHub Profile
@jrenner
jrenner / kot-strings-bytecode
Created Oct 12, 2014
testing kotlin string concatenation bytecode results
View kot-strings-bytecode
fun test() {
val x = "a" + "b" + "c"
}
fun test2() {
val sb = StringBuilder()
sb.append("a").append("b").append("c")
val x = sb.toString()
}
View expressive-kotlin.kt
package org.jrenner.tactical.utils
import com.badlogic.gdx.utils.TimeUtils
object Timer {
enum class TimeUnit(val name: String) {
Seconds : TimeUnit("seconds")
Millis : TimeUnit("millis")
Micros : TimeUnit("micros")
Nanos : TimeUnit("nanos")
View groundchunk.java
public class GroundChunk extends ModelInstance implements Visible {
private static final BoundingBox box = new BoundingBox();
public Vector3 position;
public Vector3 dimensions;
public float radius;
public GroundChunk(Model model) {
super(model);
calculateTransforms();
calculateBoundingBox(box);
View heightmapmodel.java
package org.jrenner.tac;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.Mesh;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.VertexAttributes;
import com.badlogic.gdx.graphics.g3d.Material;
import com.badlogic.gdx.graphics.g3d.Model;
View heightmap.java
package org.jrenner.tac;
import com.badlogic.gdx.files.FileHandle;
import com.badlogic.gdx.graphics.Pixmap;
import com.badlogic.gdx.math.Vector3;
import com.badlogic.gdx.utils.GdxRuntimeException;
import org.jrenner.tac.utils.Tools;
/** Heightmap (heightfield) implementation with adjustable height/width scaling and iterative smoothing
* @author jrenner */
@jrenner
jrenner / astar.java
Created Jun 14, 2014
Libgdx A* A Star path finding example
View astar.java
package org.jrenner.tac.ai;
import com.badlogic.gdx.math.Vector3;
import com.badlogic.gdx.utils.Array;
import com.badlogic.gdx.utils.BinaryHeap;
import com.badlogic.gdx.utils.DelayedRemovalArray;
import com.badlogic.gdx.utils.GdxRuntimeException;
import com.badlogic.gdx.utils.ObjectFloatMap;
import com.badlogic.gdx.utils.ObjectMap;
import com.badlogic.gdx.utils.ObjectSet;
View HeightMapModel.java
package org.jrenner.tac;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.Mesh;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.VertexAttributes;
import com.badlogic.gdx.graphics.g3d.Material;
import com.badlogic.gdx.graphics.g3d.Model;
View SetFromCross.java
Vector3 forwardInRest = Vector3.Z; // object's front is facing Z
Vector3 target = tmp.set(Input.worldMouse); // object should face mouse
q.setFromCross(forwardInRest, target.sub(pos).nor());
gameObj.transform.set(q);
gameObj.transform.setTranslation(pos);
View stringbuilder-kotlin
fun StringBuilder.plus(added: String?): StringBuilder {
this.append(added ?: "null")
return this
}
fun example() {
val sb = StringBuilder()
sb + "hello" + "I" + "am" + "a" + "StringBuilder".toString()
}
View robovm-kotlin
RoboVM Compile Bash Script
Compiling robokot.RobokotPackage (linux x86)
Compiling jet.runtime.typeinfo.JetValueParameter (linux x86)
Compiling kotlin.jvm.internal.KotlinPackage (linux x86)
Compiling robokot.RobokotPackage-Start-80c4f241 (linux x86)
Compiling kotlin.io.IoPackage (linux x86)
Compiling kotlin.ByteIterator (linux x86)
Compiling kotlin.Function1 (linux x86)
Compiling kotlin.Function2 (linux x86)
Compiling kotlin.io.IoPackage-Files-7bf2ec89 (linux x86)