From 4c296c542de723ca3c18dcd7c40e3989b3db7e73 Mon Sep 17 00:00:00 2001 From: omigamedev Date: Mon, 20 May 2019 21:46:48 +0200 Subject: [PATCH] improve splash --- data/splash.jpg | Bin 23785 -> 52504 bytes src/main.cpp | 34 ++++++++++++++++------------------ 2 files changed, 16 insertions(+), 18 deletions(-) diff --git a/data/splash.jpg b/data/splash.jpg index a0c6ac6e213ee88556d78ce7878645a46df88d7d..d503df5967729e7cf9a29c0e9144b07aaa9fa974 100644 GIT binary patch literal 52504 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 YX>fHKT%86}>%xTazhRR|nSc5J0rp*bb^rhX literal 23785 zcmeFZXH;9)wl*x=iS4)%LbEaD9Eid6&0af`t$U1TmNbLh3hWn}*HrKa*<6x0=EWNsR&sDGucr>7^cY-D;%2dJs5r*rZOaPjdfiWXFfY8a^cK*;e~)x zr_X%y>DhClU;I`3yx}*t_k%+p)ryHLgrq;Omb$8_^X*-jJqn%itY&~AA*rWt;P&&c zMXz=3-hBC;xh3?Mw}UqxuT8n1i~`Po91sL(dG-6K|9k%575Lv3_}>-y-xUCylIff{ zuo6+-*0h;n_`B93>{pzs6mm#OMd4s@*!2C4{TF^!?I~(oxe$_N*P-`d%e@!>!;f4? z!;)(j3vC-i@GdY>K{w@5g->p!s7pcVvxS*Y_W9@e@$e^~XPs9)gDSqcyn( zo9Zy+O%h3=G&Qr!r?6}TT+3q4#2kO#esnjD9qnScI&~?KdGn}OqedTG8Tep+zc4h| z#ok`SFo0>T4Yr2PrglXA^UVM8|JB&2omcF_XI^K-yCcXN*8Hk&S`7wx1a@@#Y7iDvrQ z<^bqybWmfxYlxmRE$|}N9cpD(+TTtj0VxB=g2Uvoi-uCRZz;GZ>As56%cg2rf8oN} z32kWS<0zkEJLCkpE!+>=LppyM&DUA=pvEW$&fk9ZvC;F&UxTe8yvGjiG3t&`+^68E z#3E)xZ9s%}mocqZ_hvscBSHQtJQiMi0vLF(b|-cvh1sOD7TV-F|9RUcOO!Fxu?1g#Vf~|AZ zy7pvFVOiQIO_Rd@PSa=7BCK6EmLieYKKHk|hOHTE5v2-l{3L7xXs1a;&acR)KnBjE z##d0Qi3RiY!ePdb4?i~k^YQk8*L-$XK!8)qUOAce-x}6wc$8;pk&G=((V1;CyqQ#t zZya4*^uf>iYpn&y&#N4DY#3zk8j1+Sk7xF--#NSwLKe4q^?5mUFnOTbGUJthWu+r|CBxd$?7Nf9( z?|NQiV3wA>Jow{l!`k~2Ffmy95X1yqw$6aZ_m0V34U+eBF5fl6pw=jnr7z<3l1ELPDc_Ob9Q-#}JC>2)oy z8)E-P+yP}2`=Dir)^E9cNwMhoil8ws->gNVZs1RCq1&A50ChHRX2G^A2KLvMhRX#- z4)ikra%$)$RRv^~WCJgT9gEE#>mVt2sy=XZmYkM|ga<)ic#U(5`BDnF1qdv;mT4XH zePJoyZdbbQ<7`k^P0lM$gv8PHyUDeQF+RCRUE~zkv!x{C!}ar0!$&n{JGMt&CxEs6 ziF&JXKB(dZaIB8F{zLowIzMYQ5#p+!Q!sMEh8!B=UYpSLGxcUHscL#*pINufta zk)H#CurY%SY~e)93%RJumoS&U$=c;l? z>@aP%vpG3A8+USl3p1o6N5^&~lc~nHjGwk^nnNCd`(Kqa;hHVt-L4;R@%Q6&;Y!+S zEHUElL``FlVxXVqPNeTZ*m&2oUjWzoQ`v?TBHV=feYLndhpcGUE82CFT*jw~P9_R{ zZx1BS?xznxISwVD_eqM2MPDK2(g91stG?!t8#{6tp0k(%7mtSWSzhl<>X%Dpg|2-m zT3fj;hZ7w` zwXA!Ji7A=La=6L{7`5l%>o~aTojZ=nOg{l!|KbRPEOe#`Jl*lRkE3^CV5bgAByR$e zR7%KM#NoJ~PkRQMRuS2G;d#lot5IgtFS~=`o&9+oGT)EDU|oimnf=`v;8=Ps(Kpwo z3UbGq`BkmY`pg7@H=wig@XXb9cysF1?$FWa@fs^U&0XAhGHuyk|2zP241?)G_2G6< zFs7&fX1thg_;R#abDZb&UWXnFDDDj%GF z^m0X`D*o3S9}*K&gFo(4A}RMA1TZ~jIx@GoUa28|SV=V@_oIp2KlT- z<$~1rfB)Dubx1NIL=vzZ{4aiZ`C@q+)$_BcS_)ykgKE#(E!_{9fZuXS73>Rp) z64I|Xcu!K*X2DG`loo8Pjf?YWGbLm^RP;SS6r zrWgynOG;cMME$z(P!}#wsf621pViOTfappOEe!K>)m=$Ro)K8%J@f6YZ_AHER^;D~ z5*M>U5!{t9=9b2tphZ0|q*1utK(aYQY8B=TH3gkB^0va8fW*LW=(vIm-|NytA?0*T z10mPFTjvEeHpE6#AFGWai+iwST@Jev2@|{CeB4$~c!`bg%kMaOzcv!@vUK=VIOsRW zDt6_@dWa8KY;o@CX|KB7;zmr$VsLUPJmU$t#3$<0Z{bpJ&qa~!X zC0^IvpvS5?Xa!=t+@GqvQnn81?$iW)A`-Fg>+eUal3rfu8!9^iyq*Dr8K8;s8a(mc z^BpZ2Y8)MbS=;a#)b=82Oh>n9X>=~~=4Qzoo2c5=-ou`}5kq1W#(YDi0DZAI6m>S}Q zt_a7Kqv3VRhZ~;Iv7bVXQ(N*7V*Lf>SktbFJ#VhOj*dvZri;zx-Im1kNVzT3Yz?>` zOs>Jf$v0)J<7;w~4q6e`N_=KrG4TYhb>rQx^WouP_l|q8Q{ZX>QLeZ1&CnjY{K8>} z(Yio&iEI|D5CV9(j@MGY_#~HXsbs;99Adf`qnKz5+rDK{Ai?UTS4_jrVm^%rZ8B6>kA!p~^@kVzyt;b_t;Epatbyk0m!Dhbg6F zRLkOYYjJ3%vxT;lDpyoy|9SgAEIAUgre&xGiW^>?docd4$q4Qi;6l@9cIStAc-*3A zgwE&Pf$Ypt@PX3oqY^O|qH`Sz4(*EPAO?)d9&qjLK8dT6#?v||1x*BA9lBk&zkeI= zz}{b(q`@NUD{;8Ka6teEM*t3OTajd*A5bvd*7&?@Ymz@(%Fn@H)|LA#P3*;` zv^K=+O1EGWM0H9zZ=}|O@0N$D@g?NOd}^95*7f-+&t~e-loUfl@6f0lS{|yGXE7)*-M==QdkI6`q*P{!|@6Mz;TDoh<&zYJsm=vh2+R*_>UtW{kBq z%Pi*InsD_@2c-K#VIRiAFoLC+cP%jr+=Y#e1IMU|i+vyTg|lN6sId(Nmtt+2wLsGsTKbopgcysax`U!sDB`6*^O1E31m5zM z5Rh?6iF`Z|9G*=`CND(B+Z2O-=&j98arMCPYNDXB)n-2|h5*DtAui>m3$*K)uXH!6 zqX+X-@eMAd)NB=MH(q6NIaBsF z4bz|zny0cZ2d z|FuDVb-cIwh-Rvixr_{w+(BnYfmbcq+x5A>06wuwf|pglz5Et|?oz%&G7SYo<$={f zOw)dQPu68Ma-=4YLk4wQfCQCZAOv&STlxy7GNyNNIB1C(LC5$clHE+g&3kkRyEBs0 z;}VFrT2u%}l^lF^ShX-S_-OwCxfyDejz}~}eA~-u@J`MRc#K0aoe7$3f`+a3EUDSn ztPH#!S!h_W?-npI7);x4>q#QGAJ&1RRxMU|vSa3GN|`qcSh$E%9w|0vox`>#T3`db znI88DM!h}8)2sXLQ&I2qLtp`orDPnT(bJ8DOofU~XLJ8DdcDJb#IaX8H8a8;f3wN0 z>_CD`NF1Fp4i0d$;9% zTTxlwRSYkaZacTeJX%=Xw7RPfFdhpG_F6_nO2HWcy;4iCJ|Es%0CcLTN(LNiKxVV5 z4GqTM3wf!$3>Zxa8CxD2&mk_#z zF3a~yuSB@=Go}D`fu=H5iEC+XqM2jbqe&-#Zup&}JO|q-=!|{wbN)yq`kU5rDa}@a zmgfVgn0B902aPc@qP<3(U8|kL#CQ^MXkC!%wvBZs4>88+=55I^_`qflCW6sq`0!xSEP=ctr+EqD)m-C_@3i`XmCC!!GT7@YE4GM@T%m?X zHP6lQWlm3AH6YLpg3z?+J_Cr#3BdVo6~$i!_8xV#SnjiT3;t4kf~qHYS>0a`{B7;; z{8B{nZ~!b|S;E2&ZoZN0X*})bUgH?}n0>FH*ZO*_3muFUK({Y$GFM4%#?!GaqAYG| z%O~W|B_?Dd2azX$Z1=Gr-#tbKbvI>kc2ioOtDTh@$B$LMT>#>Jp>a$$VAa)k2HTty zaSPuTWtx(9>#A*_mNN}vtlqO()C%!{ZS0jTP5igSm*J)r{=;&i=N`kz!(^Lb~polm_~Q zlk4G;S>LlS0aydq?ZvV9u1cLC8^} zM#*+e^j6ciD>1}uteWc5CV6?3*0TpppG_?dn}`CdR~+UBuT@t)m?&TNzem+)nt7+z z&44GH4~M36XDsra&@%h?;HA{#!e}iVtB}{UEWWwmlVPS6)ejm8qPU2xRw^Z}Al?Ve zIuVQn>uQ7@&>F*33wNQ#ZCjteG(ka>*FjWEXNFQ{!_dDIOP+-3RUB$wa1b0+MUc?El$qh)`ha_OmII8$eU!J050`+ z>abqv@Iv5Gey)~|+u0J*Eac z{%<2;{UkSBVM?+naG^HvHCXubc*qwek>Ns&rw_B+NOCjk=}!z?YCg4S%%z9Ze_nR9 zk+tnp7lhBk<$UpFJp@S$=|vSNz#`Uxzfl_by*HzJJIBj3taW7wkuzF`1z#VIlbJ|`vun) z(g>5k(gq!o*brj0PZ2JfWO8WE`{>?-RMIk%9%Oho&4VhLtuW<+FO;u~JZW4xph;CPJhj%zrNQ$e zaPymMZK6Bq&9FIXMZX}l*D^f>W*lvt<&46;>r0@qW{J!0vpgIez#Q`!hGtm`Vt2x0LzY|BiG%h5z$>skhBs=U{(H2jiXmbuD*`+ z()leG$tNUAbz0>>KWCi@j;;%LpM7#yJwPm2b^G10yO;qNHXk0^>RL=?BMYlSh`m#3 zm%`no$C+JPjz!C)1u`e3&5jA)Oe%_0y0QPMDMx<%1Yjd5Y4Hfnu^j(^SlMP3tv6+= zoCjRG(<+NhdE2tpWHZ!ePo8C3lZwLI>}5%%?DIx48Aic5@#K8yDN8=O?|2!q>Rq z9|sJD@yly~oZ87mZ;j`#E?@kfFm5wRGp>ISdXSBfRKXkiyEIoRjJ$o*##r}mf74!@ zl4g!7V&*C&`J{bm1ziz2TV1q}dyIEETmHmLOS*Xs>%;4c3O21ab6E6fR$U_m~e!{7Q{nhccu+aia78!923)0JfqX+d1JI<)`6@k+-^5=k%>I9%Vob| z5tY2!-zZ5DdJ|+kx|0fFBZ#EZ%`o@QuYUdc&v@{+d5nY5hG^vsAsl42_fOPg5 z_{2hQVgKx>jb*8}D7r0*x5wwf`<9uH;t{eJs?}jud%Bd_hh{s} z5kn(#s<${Gm5-DGQjb0F)n3tunkz z3DL9m1qJ$E-6!B;%CCiOg_M#^lsm-at`>I2b$*EK7l~TVGbZa<&_N` zKFf*gx51b8IJ!rQ{xOyihW|Ij{Hv?fza1kc+?{Cc;|g$E=%_%$Scnw9{K+}jH`j}F zG%pN7s%3-aXlrkXw+*U93=P)F%0Dp5^8=!YnmZqsI(CWFUWk#?zB1bLh91;~P9CSZ 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 VhxGx04+wlf-~$4`Az=JY_D?0vx2^yH diff --git a/src/main.cpp b/src/main.cpp index 6c9d2bb..cb5fe79 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -595,23 +595,18 @@ void win32_save_window_state() p.rcNormalPosition.top, p.rcNormalPosition.right, p.rcNormalPosition.bottom })); } -HBITMAP load_image(const std::string& path) +HBITMAP image_to_hbitmap(const Image& img) { - int w, h, c; - stbi_set_flip_vertically_on_load(true); - auto rgb = std::unique_ptr(stbi_load(path.c_str(), &w, &h, &c, 3)); - if (!rgb) - return NULL; BITMAPINFOHEADER bmih; memset(&bmih, 0, sizeof(BITMAPINFOHEADER)); - bmih.biWidth = w; - bmih.biHeight = h; - bmih.biBitCount = 24; + bmih.biWidth = img.width; + bmih.biHeight = img.height; + bmih.biBitCount = 32; bmih.biCompression = BI_RGB; bmih.biSize = sizeof(BITMAPINFOHEADER); bmih.biPlanes = 1; BITMAPINFO* bmi = (BITMAPINFO*)&bmih; - return CreateDIBitmap(GetDC(NULL), &bmih, CBM_INIT, rgb.get(), bmi, DIB_RGB_COLORS); + return CreateDIBitmap(GetDC(NULL), &bmih, CBM_INIT, img.data(), bmi, DIB_RGB_COLORS); } LRESULT CALLBACK splash_proc(HWND hWndDlg, UINT Msg, WPARAM wParam, LPARAM lParam) @@ -620,20 +615,23 @@ LRESULT CALLBACK splash_proc(HWND hWndDlg, UINT Msg, WPARAM wParam, LPARAM lPara { case WM_INITDIALOG: { - static char base_path[MAX_PATH]; - GetCurrentDirectoryA(MAX_PATH, base_path); - std::string path = std::string(base_path) + "\\data\\splash.jpg"; - //auto hbitmap = (HBITMAP)LoadImageA(NULL, path.c_str(), IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE); - auto hbitmap = load_image(path); - SendMessage(GetDlgItem(hWndDlg, IDC_STATIC_IMAGE), STM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)hbitmap); - SetDlgItemText(hWndDlg, IDC_STATIC_VERSION, g_version_number_w); - auto monitor = MonitorFromWindow(0, MONITOR_DEFAULTTOPRIMARY); auto x = unsigned{}; auto y = unsigned{}; GetDpiForMonitor(monitor, MDT_EFFECTIVE_DPI, &x, &y); float z = (float)x / 96.f; + static char base_path[MAX_PATH]; + GetCurrentDirectoryA(MAX_PATH, base_path); + std::string path = std::string(base_path) + "\\data\\splash.jpg"; + //auto hbitmap = (HBITMAP)LoadImageA(NULL, path.c_str(), IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE); + Image img; + img.load_file(path); + img.flip(); + auto hbitmap = image_to_hbitmap(img.resize(512 * z, 200 * z)); + SendMessage(GetDlgItem(hWndDlg, IDC_STATIC_IMAGE), STM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)hbitmap); + SetDlgItemText(hWndDlg, IDC_STATIC_VERSION, g_version_number_w); + RECT r; GetClientRect(hWndDlg, &r); MoveWindow(GetDlgItem(hWndDlg, IDC_STATIC_IMAGE), 0, 0, 512 * z, 200 * z, TRUE);