TerraSkilll
Zumbi
Moderador
4.1K Mensagens
1.2K Curtidas
É uma questão pessoal mas, se está aprendendo do zero, acho que compensa aprender a 2.0 direto. Ela já está razoavelmente madura e contém muitos tutoriais, e a maioria do que vier por aí deve ser para essa versão. Além disso, a SDL 2.0 contém novidades interessantes, dentre elas:
- suporte a aceleração por hardware (jogos mais rápidos);
- suporte a Android e iOS (plataformas importantes de jogos atualmente);
- suporte a OpenGL 3.0+ e OpenGL ES (facilitando jogos 3D);
- suporte a dispositivos touch;
Abraço.
Rik Ferreira
Novo Membro
Registrado
24 Mensagens
0 Curtidas
Mas existem muitas diferenças entre as versões 1.2 e 2.0 ou a 2.0 só acrescenta algumas coisas?
Intel Core i5, Intel HD 4000, 6GB RAM, 320 GB HD, Dual Boot Windows 7 & Linux Mint MATE
TerraSkilll
Zumbi
Moderador
4.1K Mensagens
1.2K Curtidas
Rik Ferreira
Existem diferenças grandes, mas também muitas sutis. Não são só coisas acrescentadas, mas coisas que agora são feitas de forma diferente, ou mesmo recursos removidos. A página que linkei mostra as mais significativas. Se você aprender SDL 1.2, terá de adaptar um pouco seu conhecimento para trabalhar com a 2.0. Não que isso seja impossível (não chega nem a ser difícil), mas é algo a mais para se preocupar. E algumas das vantagens (como aceleração por hardware) podem compensar utilizar só a 2.0.
Como disse, é uma questão pessoal. Se o material que você tem de SDL 1.2 é excelente, continue com ele, mas leve em consideração que terá de aprender a 2.0 em um futuro próximo, se for continuar com essa biblioteca.
Abraço.
Rik Ferreira
Novo Membro
Registrado
24 Mensagens
0 Curtidas
Pois é, decidi começar de novo pela 2.0, já tinha brincado um pouco com a 1.2 mas é melhor mudar logo.
Só mais uma dúvida: eu ainda não domino o C++, programo bem em C mas não sou acostumado com C++. É melhor eu começar a ver C++ antes ou dá pra ir levando em C, já que a SDL é escrita em C?
Intel Core i5, Intel HD 4000, 6GB RAM, 320 GB HD, Dual Boot Windows 7 & Linux Mint MATE
TerraSkilll
Zumbi
Moderador
4.1K Mensagens
1.2K Curtidas
Novamente, é questão pessoal. O que muda do uso de C ou C++ é o seu código, então você programa no que se sentir mais confortável. A SDL, até onde sei, não força o uso de uma linguagem ou outra.
Abraço.
tpcvasco
General de Pijama
Registrado
2.9K Mensagens
330 Curtidas
Isso quer dizer q é possível fazer aplicativo pra mobile usando SDL? Mas, por exemplo, pelo q eu saiba SDL é pra C e app pra Android é feito em Java...
"Milhouse: - Médicos e bombeiros são heróis.
Bart Simpson: - Olha, as casas continuam pegando fogo e as pessoas continuam doentes. Os verdadeiros heróis são os Schwarzenegger's, os Stallone's, e, em menores proporções, os Vandame's..."
Rik Ferreira
Novo Membro
Registrado
24 Mensagens
0 Curtidas
Entendi cara, é que a minha dúvida era referente à orientação a objetos do C++ mas acho que dá pra ir levando a SDL por agora.
Uma dúvida que me apareceu agora: aquele tipo SDL_Window, por que eu preciso dele nos programas? Eu fiquei meio confuso porque tem horas que eu preciso trabalhar com a surface da janela, outra hora eu tenho que trabalhar com a janela em si, fiquei meio perdido nesta parte.
Intel Core i5, Intel HD 4000, 6GB RAM, 320 GB HD, Dual Boot Windows 7 & Linux Mint MATE
TerraSkilll
Zumbi
Moderador
4.1K Mensagens
1.2K Curtidas
tpcvasco
Isso quer dizer q é possível fazer aplicativo pra mobile usando SDL? Mas, por exemplo, pelo q eu saiba SDL é pra C e app pra Android é feito em Java...
O SDL no Android usa JNI (Java Native Interface), que é um recurso que permite carregar bibliotecas de outra linguagens (não sei quantas) para o Java. Seria como, num programa Java, você carregar uma dll e utilizar as funções dessa dll. É algo meio chato de fazer (e propenso a erros), mas já existe há bastante tempo e permite muitas coisas (é útil, por exemplo, para fazer comunicação do Java com bibliotecas de portas seriais e/ou impressoras fiscais). A página contém alguns exemplos, mas é um recurso razoavelmente novo da SDL, então não está muito documentado ainda.
Note que o Java é a linguagem padrão do desenvolvimento Android, mas não é a única. Com o uso do NDK, é possível utilizar escrever programas "nativos" (C/C++), além de haver bindings (é esse o termo certo?) para outras linguagens.
Rik Ferreira
Entendi cara, é que a minha dúvida era referente à orientação a objetos do C++ mas acho que dá pra ir levando a SDL por agora.
O fato de usar SDL (ou mesmo C++) não te obriga a utilizar orientação à objetos.
Uma dúvida que me apareceu agora: aquele tipo SDL_Window, por que eu preciso dele nos programas? Eu fiquei meio confuso porque tem horas que eu preciso trabalhar com a surface da janela, outra hora eu tenho que trabalhar com a janela em si, fiquei meio perdido nesta parte.
SDL_Window é o objeto referente à janela onde roda seu programa (ou seja, onde são [URL="https://wiki.libsdl.org/SDL_CreateRenderer?highlight=%28SDL_Window%29"]renderizados os surfacesURL]).
Abraço.
Rik Ferreira
Novo Membro
Registrado
24 Mensagens
0 Curtidas
Pois é, eu curti bastante algumas coisas da linguagem mas não pretendo ficar estudando somente C++, vou ir aprendendo com o tempo e com a necessidade.
Gostei bastante dessa wiki da SDL, vai ajudar bastante quando eu tiver alguma dúvida sobre a biblioteca.
De qualquer forma, obrigado, me esclareceu bastante coisa, eu meio que tinha medo de pegar a SDL 2 (ou preguiça de aprender todo o conteúdo do 0) e acabei tomando coragem de estudar tudo desde o começo, afinal, eu nem tinha ido tão longe assim antes.
Obrigado.
Intel Core i5, Intel HD 4000, 6GB RAM, 320 GB HD, Dual Boot Windows 7 & Linux Mint MATE