搭建 LightGame 游戏框架

This commit is contained in:
2026-06-09 12:25:01 +08:00
parent 189072ba4e
commit aecd5a46ed
35 changed files with 3164 additions and 0 deletions
+28
View File
@@ -3,6 +3,7 @@
#include "FrameBuffer.h"
#include "Image.h"
#include "SpriteAssetLoader.h"
#include "SdlPhotoSensor.h"
#include <cassert>
#include <cstdio>
@@ -232,6 +233,32 @@ namespace
assert(pixels[2] == 0x0000u);
assert(pixels[3] == 0x0000u);
}
void TestSdlPhotoSensorClampAndRange()
{
Platform::SdlPhotoSensor sensor;
assert(sensor.init());
sensor.set_range(100, 3000);
assert(sensor.read_level() >= 100);
assert(sensor.read_level() <= 3000);
sensor.set_level(50);
assert(sensor.read_level() == 100);
sensor.set_level(5000);
assert(sensor.read_level() == 3000);
sensor.set_level(1500);
assert(sensor.read_level() == 1500);
sensor.set_step(100);
assert(sensor.is_open());
sensor.shutdown();
assert(!sensor.is_open());
assert(sensor.read_level() == 2048);
}
}
int main()
@@ -245,6 +272,7 @@ int main()
TestDrawTextUsesBitMaskAndColor();
TestDrawTextColorChangesPerCallAndBackgroundFill();
TestDrawTextClipsBitMaskToScreen();
TestSdlPhotoSensorClampAndRange();
std::cout << "render_pipeline_tests: PASS\n";
return 0;
}