Compare commits

..

1 Commits

Author SHA1 Message Date
f5573e06da [nostalgia/studio] Set version to d2025.05.0
All checks were successful
Build / build (push) Successful in 1m13s
2025-05-10 00:23:30 -05:00
9 changed files with 44 additions and 50 deletions

View File

@@ -4,17 +4,16 @@
* Change application font to Roboto Medium
* Closing application will now confirm with user if any files have unsaved
changes.
* UUID duplicates will now be reported when opening a project.
* Deleting a directory now closes files in that directory.
* Delete key now initiates deletion of selected directory.
* UUID duplicates will now be reported when opening a project
* Deleting a directory now closes files in that directory
* Delete key now initiates deletion of selected directory
* Remove ability to re-order tabs. There were bugs associated with that.
* Mac: Menu bar shortcuts now say Cmd instead of Ctrl.
* TileSheetEditor: Fix selection clearing to work when clicking outside image.
* TileSheetEditor: Fix selection clearing in to work when clicking outside
image.
* TileSheetEditor: Fix Delete Tile functionality, which was completely broken
* TileSheetEditor: Fix Insert Tile functionality, which was completely broken
* PaletteEditor: Fix color number key range. Previously, pressing A caused the
editor to jump to the last color.
* PaletteEditor: Page rename will now take effect upon pressing enter if the
* PaletteEditor: Fix color number key range in. Previously, pressing A caused
the editor to jump to the last color.
* PaletteEditor: page rename will now take effect upon pressing enter if the
text input has focus
# d2025.02.1

View File

@@ -231,10 +231,10 @@ void hideSprite(Context &ctx, unsigned) noexcept;
void showSprite(Context &ctx, unsigned) noexcept;
void setSprite(Context &ctx, uint_t idx, Sprite const&sprite) noexcept;
void setSprite(Context &c, uint_t idx, Sprite const&s) noexcept;
[[nodiscard]]
uint_t spriteCount(Context const &ctx) noexcept;
uint_t spriteCount(Context &ctx) noexcept;
ox::Error initConsole(Context &ctx) noexcept;

View File

@@ -293,7 +293,7 @@ void setSprite(Context&, uint_t idx, Sprite const&s) noexcept {
});
}
uint_t spriteCount(Context const &) noexcept {
uint_t spriteCount(Context&) noexcept {
return SpriteCount;
}

View File

@@ -183,7 +183,7 @@ static void setTileBufferObject(
ox::spancpy<GLuint>(ebo, elms);
}
static void initSpriteBufferObjects(Context const &ctx, glutils::BufferSet &bs) noexcept {
static void initSpriteBufferObjects(Context &ctx, glutils::BufferSet &bs) noexcept {
for (auto i = 0u; i < ctx.spriteCount; ++i) {
auto const vbo = ox::Span{bs.vertices}
+ i * static_cast<std::size_t>(SpriteVertexVboLength);
@@ -256,7 +256,7 @@ static void initSpritesBufferset(Context &ctx) noexcept {
}
static void initBackgroundBufferset(
GLuint const shader,
GLuint shader,
glutils::BufferSet &bs) noexcept {
// vao
bs.vao = glutils::generateVertexArrayObject();
@@ -375,10 +375,10 @@ static void drawSprites(Context &ctx, ox::Size const&renderSz) noexcept {
static void loadPalette(
ox::Array<GLfloat, 1024> &palette,
size_t const palOffset,
GLuint const shaderPgrm,
size_t palOffset,
GLuint shaderPgrm,
CompactPalette const&pal,
size_t const page = 0) noexcept {
size_t page = 0) noexcept {
static constexpr std::size_t ColorCnt = 256;
for (auto i = palOffset; auto const c : pal.pages[page]) {
palette[i++] = redf(c);
@@ -528,9 +528,9 @@ static ox::Result<TileSheetData> normalizeTileSheet(
ox::Error loadBgPalette(
Context &ctx,
size_t const palBank,
size_t palBank,
CompactPalette const&palette,
size_t const page) noexcept {
size_t page) noexcept {
renderer::loadPalette(ctx.bgPalette, palBank * 16 * 4, ctx.bgShader, palette, page);
return {};
}
@@ -538,14 +538,14 @@ ox::Error loadBgPalette(
ox::Error loadSpritePalette(
Context &ctx,
CompactPalette const&palette,
size_t const page) noexcept {
size_t page) noexcept {
ox::Array<GLfloat, 1024> pal;
renderer::loadPalette(pal, 0, ctx.spriteShader, palette, page);
return {};
}
static ox::Result<TileSheetData> buildSetTsd(
Context const &ctx,
Context &ctx,
TileSheetSet const&set) noexcept {
auto &kctx = keelCtx(ctx.turbineCtx);
TileSheetData setTsd;
@@ -624,7 +624,7 @@ ox::Error loadBgTileSheet(
ox::Error loadBgTileSheet(
Context &ctx,
uint_t const cbb,
uint_t cbb,
CompactTileSheet const&ts,
ox::Optional<unsigned> const&paletteBank) noexcept {
auto const bytesPerTile = static_cast<uint64_t>(PixelsPerTile / (1 + (ts.bpp == 4)));
@@ -638,7 +638,7 @@ ox::Error loadBgTileSheet(
ox::Error loadBgTileSheet(
Context &ctx,
unsigned const cbb,
unsigned cbb,
TileSheetSet const&set) noexcept {
OX_REQUIRE(setTsd, buildSetTsd(ctx, set));
ctx.cbbs[cbb].tex = renderer::createTexture(setTsd.width, setTsd.height, setTsd.pixels.data());
@@ -648,7 +648,7 @@ ox::Error loadBgTileSheet(
ox::Error loadSpriteTileSheet(
Context &ctx,
CompactTileSheet const&ts,
bool const loadDefaultPalette) noexcept {
bool loadDefaultPalette) noexcept {
OX_REQUIRE(tsd, normalizeTileSheet(ts));
oxTracef("nostalgia.gfx.gl", "loadSpriteTexture: { w: {}, h: {} }", tsd.width, tsd.height);
ctx.spriteBlocks.tex = renderer::createTexture(tsd.width, tsd.height, tsd.pixels.data());
@@ -669,8 +669,8 @@ ox::Error loadSpriteTileSheet(
void setBgTile(
Context &ctx,
uint_t bgIdx,
int const column,
int const row,
int column,
int row,
BgTile const&tile) noexcept {
oxTracef(
"nostalgia.gfx.setBgTile",
@@ -698,7 +698,7 @@ void setBgTile(
cbb.updated = true;
}
void clearBg(Context &ctx, uint_t const bgIdx) noexcept {
void clearBg(Context &ctx, uint_t bgIdx) noexcept {
auto &cbb = ctx.cbbs[static_cast<std::size_t>(bgIdx)];
initBackgroundBufferObjects(cbb);
cbb.updated = true;
@@ -714,49 +714,51 @@ uint8_t bgStatus(Context &ctx) noexcept {
return out;
}
void setBgStatus(Context &ctx, uint32_t const status) noexcept {
void setBgStatus(Context &ctx, uint32_t status) noexcept {
for (uint_t i = 0; i < ctx.cbbs.size(); ++i) {
ctx.backgrounds[i].enabled = (status >> i) & 1;
}
}
bool bgStatus(Context &ctx, uint_t const bg) noexcept {
bool bgStatus(Context &ctx, uint_t bg) noexcept {
return ctx.backgrounds[bg].enabled;
}
void setBgStatus(Context&ctx, uint_t const bg, bool const status) noexcept {
void setBgStatus(Context&ctx, uint_t bg, bool status) noexcept {
ctx.backgrounds[bg].enabled = status;
}
void setBgCbb(Context &ctx, uint_t const bgIdx, uint_t const cbbIdx) noexcept {
void setBgBpp(Context&, unsigned, unsigned) noexcept {}
void setBgCbb(Context &ctx, uint_t bgIdx, uint_t cbbIdx) noexcept {
auto &bg = ctx.backgrounds[bgIdx];
bg.cbbIdx = cbbIdx;
}
void setBgPriority(Context &ctx, uint_t const bgIdx, uint_t const priority) noexcept {
void setBgPriority(Context &ctx, uint_t bgIdx, uint_t priority) noexcept {
auto &bg = ctx.backgrounds[bgIdx];
bg.priority = static_cast<float>(priority & 0b11);
}
void hideSprite(Context &ctx, uint_t const idx) noexcept {
void hideSprite(Context &ctx, uint_t idx) noexcept {
auto &s = ctx.spriteStates[idx];
s.enabled = false;
renderer::setSprite(ctx, idx, s);
}
void showSprite(Context &ctx, uint_t const idx) noexcept {
void showSprite(Context &ctx, uint_t idx) noexcept {
auto &s = ctx.spriteStates[idx];
s.enabled = true;
renderer::setSprite(ctx, idx, s);
}
void setSprite(Context &ctx, uint_t const idx, Sprite const&sprite) noexcept {
void setSprite(Context &ctx, uint_t idx, Sprite const&sprite) noexcept {
auto &s = ctx.spriteStates[idx];
s = sprite;
renderer::setSprite(ctx, idx, s);
}
uint_t spriteCount(Context const &ctx) noexcept {
uint_t spriteCount(Context &ctx) noexcept {
return ctx.spriteCount;
}
@@ -766,7 +768,7 @@ ox::Size drawSize(int scale) noexcept {
return {240 * scale, 160 * scale};
}
void draw(Context &ctx, ox::Size const&renderSz) noexcept {
void draw(gfx::Context &ctx, ox::Size const&renderSz) noexcept {
glViewport(0, 0, renderSz.width, renderSz.height);
glEnable(GL_DEPTH_TEST);
glEnable(GL_BLEND);
@@ -781,7 +783,7 @@ void draw(Context &ctx, ox::Size const&renderSz) noexcept {
glDisable(GL_BLEND);
}
void draw(Context &ctx, int scale) noexcept {
void draw(gfx::Context &ctx, int scale) noexcept {
draw(ctx, drawSize(scale));
}

View File

@@ -15,7 +15,7 @@ target_link_libraries(
target_compile_definitions(
NostalgiaStudio PUBLIC
OLYMPIC_APP_VERSION="dev build"
OLYMPIC_APP_VERSION="d2025.05.0"
)
install(

View File

@@ -18,7 +18,7 @@
<string>APPL</string>
<key>CFBundleVersion</key>
<string>dev build</string>
<string>d2025.05.0</string>
<key>LSMinimumSystemVersion</key>
<string>12.0.0</string>

View File

@@ -28,7 +28,7 @@ install(
DIRECTORY
../include/keel
DESTINATION
include
include/keel
)
install(
@@ -60,11 +60,4 @@ if(TURBINE_BUILD_TYPE STREQUAL "Native")
OxClaw
OxLogConn
)
install(
TARGETS
KeelPack-AppLib
DESTINATION
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
)
endif()

View File

@@ -44,5 +44,5 @@ install(
DIRECTORY
../include/studio
DESTINATION
include
include/studio
)

View File

@@ -38,7 +38,7 @@ install(
DIRECTORY
../include/turbine
DESTINATION
include
include/turbine
)
install(