skunkworks/com/danitheskunk/skunkworks/BaseWindow.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);
}
}