From d3a3f70be1404970fa4b67366537e889cde41ceb Mon Sep 17 00:00:00 2001 From: "HuYingzhuo(hugo/hyzboy)" Date: Wed, 13 Sep 2023 16:11:23 +0800 Subject: [PATCH] added VGA8.F8 --- BitmapFont.cpp | 29 +++++++++++++++-------------- BitmapFont.h | 5 +---- CMakeLists.txt | 3 +++ DistributionChart2D.cpp | 6 +++--- VGA8.F8 | Bin 0 -> 2048 bytes android/AndroidDeviceAnalysis | 2 +- datatype/PoolTest.cpp | 4 ++-- 7 files changed, 25 insertions(+), 24 deletions(-) create mode 100644 VGA8.F8 diff --git a/BitmapFont.cpp b/BitmapFont.cpp index ce35c87..10e90fd 100644 --- a/BitmapFont.cpp +++ b/BitmapFont.cpp @@ -4,31 +4,32 @@ using namespace hgl; namespace { - uint8 *bitmap_font_data=nullptr; + uint8 *bitmap_font_8x16_data=nullptr; + uint8 *bitmap_font_8x8_data=nullptr; }//namespace +void ClearBitmapFont() +{ + SAFE_CLEAR_ARRAY(bitmap_font_8x16_data); + SAFE_CLEAR_ARRAY(bitmap_font_8x8_data); +} + bool LoadBitmapFont() { - if(bitmap_font_data) - return(true); + ClearBitmapFont(); - bitmap_font_data=new uint8[256*16]; - - if(!filesystem::LoadFileToMemory(OS_TEXT("VGA8.F16"), (void **)&bitmap_font_data)) - return(false); + filesystem::LoadFileToMemory(OS_TEXT("VGA8.F16"), (void **)&bitmap_font_8x16_data); + filesystem::LoadFileToMemory(OS_TEXT("VGA8.F8"), (void **)&bitmap_font_8x8_data); return(true); } -void ClearBitmapFont() +const uint8 *Get8x16Char(const char ch) { - SAFE_CLEAR_ARRAY(bitmap_font_data); + return bitmap_font_8x16_data+uchar(ch)*16; } -const uint GetCharWidth(){return bitmap_font_data?8:0;} -const uint GetCharHeight(){return bitmap_font_data?16:0;} - -const uint8 *GetBitmapChar(const char ch) +const uint8 *Get8x8Char(const char ch) { - return bitmap_font_data+uchar(ch)*16; + return bitmap_font_8x8_data+uchar(ch)*8; } \ No newline at end of file diff --git a/BitmapFont.h b/BitmapFont.h index 1b4fa2e..b62ab16 100644 --- a/BitmapFont.h +++ b/BitmapFont.h @@ -6,7 +6,4 @@ using namespace hgl; bool LoadBitmapFont(); void ClearBitmapFont(); -const uint GetCharWidth(); -const uint GetCharHeight(); - -const uint8 *GetBitmapChar(const char ch); \ No newline at end of file +const uint8 *Get8x16Char(const char ch); \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index 77850e6..7b7bf02 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -67,6 +67,9 @@ set_example_project_folder("DataType/DataArray" QueueTest) add_executable(PoolTest datatype/PoolTest.cpp) set_example_project_folder("DataType/DataArray" PoolTest) +add_executable(ActiveIDManagerTest datatype/ActiveIDManagerTest.cpp) +set_example_project_folder("DataType/DataArray" ActiveIDManagerTest) + add_executable(MapTest datatype/MapTest.cpp) set_example_project_folder("DataType/DataArray" MapTest) diff --git a/DistributionChart2D.cpp b/DistributionChart2D.cpp index 29b51c2..72fc083 100644 --- a/DistributionChart2D.cpp +++ b/DistributionChart2D.cpp @@ -149,8 +149,8 @@ bool InitBitmapFont() if(!LoadBitmapFont()) return(false); - CHAR_BITMAP_WIDTH=GetCharWidth(); - CHAR_BITMAP_HEIGHT=GetCharHeight(); + CHAR_BITMAP_WIDTH=8; + CHAR_BITMAP_HEIGHT=16; return(true); } @@ -385,7 +385,7 @@ private: void DrawChar(const char ch,const uint x,const uint y) { - const uint8 *sp=GetBitmapChar(ch); + const uint8 *sp=Get8x16Char(ch); if(!sp)return; diff --git a/VGA8.F8 b/VGA8.F8 new file mode 100644 index 0000000000000000000000000000000000000000..2e7e5a6e803c1c9e6f24b353fa194f4d57e1419f GIT binary patch literal 2048 zcmYLKKWpSh6o1%<(g=Ig4S2Cr+y@wvpi?od!Ca9qaLrZ14igt5Y_%DPBHO(`K(@Rh zP3p7;fkBnn(j3THwz9iptF_?7D8KhcCQt0Vd2inQ-d|~n0+ly^-P|p2%5rFj`{$v| zz4t{rp-EZ@Pm7cl#Uv;SB4vys8iwb4*bijv*_kyo+%NC$miNQqH-~>TP2-HU)~HgQ z{&1@Ge7m{2xVpIb<*8bJG|$iGQJim4uh;9!kp@8DG}K#LSlgqWs2lp(<>*7+kw3q5m*+n4 zY%Aw0J0tWM*BV0gK#q=Mgo${bZ0>UVL|c^S+hq>R6p(3EATY0>pD-xUj{t5 zZyw!LWWMK`&3wvv{u6L<4C>h*;5Fg)gZ~1&_jw8|)*}Q*zP?r8!=HoSEOW%k$I%`+ z9uVa)&oKU<1}(K=g^P=(AY4NJ7;i*S!9UU|P+F0D)G5s~q_l<1>bMhgOsb~2ToOfOnjM;BlRR19w?A;>ARd3mfox@Mxk7t$*bH@imSE4EbXqAH3&T zMHM9_KE?&=|I|PCG}U^e^_1TW`LO^MEgo@&i3?GCI!>%D5kEqZym{gLOD-S6!dnOO zHDs8S)V8H5+ZO$grV-}D+F#2B?wgS#>p2=Pxcmmc_8oh;VLK*6EPyzBN#9s_W4-iA z0oTqLAHG`XARC3dtOs4~W0^%!gm{>SSH8a)^T2%U*6SSsRq}DS(JZ=kv})V0ZM&iw z10?*Sa^Dw3CIh^IT%Z74XQ=?Vk^I4Jnen+4fb}*Odr2JMm622EJB13st{(dy>dg0o zAE^L+`#wA${tnN-zlA51LDp_ug(pd}!!H4_7v8C$-$kNl9TWLc-bMWNBdCPK8Z#mk zaFse?2|oC%$TVQjbixbEti(3xPl6tJ@7PcBPM`8Qo$4UJ1beJ6}9td>2M?{1$KP@u*U>SKV literal 0 HcmV?d00001 diff --git a/android/AndroidDeviceAnalysis b/android/AndroidDeviceAnalysis index 111c008..82c41f1 160000 --- a/android/AndroidDeviceAnalysis +++ b/android/AndroidDeviceAnalysis @@ -1 +1 @@ -Subproject commit 111c0087eda734f86ff556961cd9bbd5f86330ee +Subproject commit 82c41f1287e60a32e004e5cc914e4f9d9595b182 diff --git a/datatype/PoolTest.cpp b/datatype/PoolTest.cpp index 3674409..8404b27 100644 --- a/datatype/PoolTest.cpp +++ b/datatype/PoolTest.cpp @@ -27,7 +27,7 @@ void StructPoolTest() //添加所有的人物数据到池中 { for(auto ui:user_info_array) - pool.Append(ui); + pool.AppendToActive(ui); } ShowUserInfoArray(pool.GetActiveArray()); @@ -83,7 +83,7 @@ void ObjectPoolTest() uic->Set(ui); - pool.Append(uic); + pool.AppendToActive(uic); if(rand()%3==1) //有1/3的概率,将这个数据放入释放列表 release_list.Add(uic);