35 lines
713 B
Java
35 lines
713 B
Java
package com.danitheskunk.skunkworks;
|
|
|
|
import org.lwjgl.stb.STBTTFontinfo;
|
|
import static org.lwjgl.stb.STBTruetype.*;
|
|
|
|
abstract class BaseWindow implements IWindow {
|
|
protected final Engine engine;
|
|
|
|
BaseWindow(Engine engine) {
|
|
this.engine = engine;
|
|
}
|
|
|
|
@Override
|
|
public Engine getEngine() {
|
|
return engine;
|
|
}
|
|
|
|
@Override
|
|
public IFont loadFontTileset(String path) {
|
|
var img = engine.loadImage(path);
|
|
var charSize = Vec2i.div(img.getSize(), 16);
|
|
var tex = loadTextureArray(img, charSize);
|
|
assert tex.size() == 256;
|
|
return new FontTileset(tex);
|
|
}
|
|
|
|
@Override
|
|
public IFont loadFontTTF(String path, float size) {
|
|
var bytes = engine.loadBytes(path);
|
|
|
|
return new FontTTF(bytes, size, this);
|
|
}
|
|
|
|
}
|