01/10/2018, 15:21
Không load được image trong SDL2
mỗi bước mình đều để printf để kiểm tra quá trình chạy, k hề có lỗi nhưng mà khi run exe thì lại k lên hình
quá mệt mỏi với cái này ai giúp e với.
[code]bool loadMedia()
{
//Loading success flag
bool success = true;
//Load PNG texture
g_texture = loadTexture("main_bg.png");
if( g_texture == NULL )
{
printf( "Failed to load texture image!
" );
success = false;
}
printf("load img xong!
");
return success;
}[/code]
link tut: http://lazyfoo.net/tutorials/SDL/07_texture_loading_and_rendering/index.php
Bài liên quan
Bạn thử xem cái này nhé!
SDL2/C++ could not load image
ảnh vẫn k load đươc, vẫn window trắng phau
có vẽ cái ảnh lên window chưa?
có gọi render present chưa?
hàm loadTexture() đâu?
các dòng lệnh vẽ đâu?
có rồi bạn
copy toàn bộ cái main.cpp lên luôn đi
here you are
[code]#include <SDL.h>
#include <SDL_image.h>
#include <stdio.h>
#include “commonFunc.h”
int main(int argc, char* args[])
{
if(!Init())
{
printf(“can’t initialize \n”);
}
[/code]
luôn mấy cái commonFunc.h .cpp gì luôn đi, để xem g_renderer nó khởi tạo ra sao. Mà main ko có main loop
while (!quit)
gì đó à? Qua phần Lesson 03 Event Driven Programming rồi mà sao ko thấy main loop đâu cảko, mình test cái render ảnh là chủ yếu nên k dùng loop.
bạn thử xóa chữ static trong mấy cái biến global g_ coi, và gộp chung tất cả thành 1 file. common.h trước rồi tới common.cpp rồi sau cùng là main.cpp, gộp thành 1 file.
nếu muốn tách 1 file thành 3 files thì cái bạn muốn là xài
extern
cho mấy biến này. Global variables fuck tạp lắm.sửa
thành
và trong main.cpp thêm
thấy rối quá hả? extern là gì, static tại sao ko xài được? Câu trả lời là đừng xài global variables =)
cái chính là mình chia nhỏ file ra để làm game mà, để 1 file, works fine
vậy là đúng nó rồi, static global variables mỗi file cpp sẽ tự tạo 1 cái riêng, ko phải chơi chung. Vì vậy phải xài
extern
, và chỉ khai báo mấy biến này ở 1 file cpp nào đó thôi, ở đây là khai báo ở main.cpp, common.cpp vì ghi làextern ...
sẽ xài 3 biến external (bên ngoài common.cpp) này.fu*k, được rồi, thanks sir. Chắc phải học lại mấy cái biến biến này :(.
khổ dâm vài tuần nữa cho biết SDL2 đi rồi về với đội SFML =)
mình đang học cái này trên lớp hí hí
thật ra mình chưa hiểu rõ cái header này lắm, nhưng gì cần khai báo trong .h và trong .cpp mình chưa rõ. bạn hiểu rõ giải thích cho mình được k
đừng khai báo biến global trong file .h, vậy thôi @_@ Hằng số global thì tạm được.
k y mình là nên khai báo cái thư viện (include) như thế nào ở file h và cpp
file nào cần thư viện gì thì include thư viện đó ở file đó. Hay include quẳng trong .cpp hết, thư viện nào .h cần thì để ở .h