
iSoron
Veteranos-
Total de itens
1.317 -
Registro em
-
Última visita
Tudo que iSoron postou
-
Pra programar um jogo, são necessários conhecimentos em diversas áreas! Já que estamos falando de jogos para Windows, vou citar as principais: 1. Base do Jogo, ou seja, é preciso saber, em um nivel no minimo avançado, programar bem em uma determinada linguagem. Seja C++, Java, etc. Com esse dominio, é possivel construir a Engine do jogo, ou seja, seu núcleo de processamento. 2. Interface Gráfica: muitos tutoriais da net já começam por aqui, ignorando a primeira. Pra Windows, essa, realmente, é uma das etapas mais dificeis, porque as bibliotecas presentes são totalmente procedurais e mal documentadas. A que ainda salva é o OpenGL. Mesmo assim... 3. Algoritmos e IA: Ter um conhecimento sólido de algoritmos é essencial para qualquer programador de jogos. Para jogos complexos, isso é só a base. Além de programação dinamica, estrutura de dados, etc, o programador de jogos complexos deve ter um conhecimento básico de inteligencia artificial, ou o jogo vai ficar com aquele oponente totalmente repetitivo. 4. Além disso, é preciso conhecimentos de design, para projetar as telas do jogo, cenários, roupas. Se for um jogo em 3D, por exemplo, provavelmente alguém precisa ser responsavel só pela criação dos modelos. E ainda falta a trilha sonora, a historia, a distribuiçao... E ai vai! Pra criar um joguinho simples, você só precisa dos topicos 1 e 2. O 2, principalmente. Como dá pra notar, não é nada simples. É por isso que geralmente uma equipe é constituida de várias pessoas, cada um bom na sua área
-
Voce tem que criar esse arquivo. Cria no bloco de notas, com o conteudo q eu botei ali, trocando só o Main-Class
-
pois ao invés de usar o manifesto como "manifest.txt", troca por MANIFEST.
-
Que erros apareceram?
-
-C vem de "Change to directory". No caso, o caminho é relativo ao atual, ou seja, ./img/ representa o sub diretorio img dentro do dir atual.
-
Se usa assim: -C [diretorio_dos_arquivos] Se você fizer como no exemplo, ele incluirá todos os arquivos do diretorio.
-
Ah bom! Se está contando com tudo, está ótimo.
-
Retirado das regras do forum.
-
O problema é que nem todo JAR é executável. Logo, você precisa definir explicitamente a classe principal que dever, se for o caso, ser executado. Isso é feito através de um arquivo MANIFEST. Faça dessa forma: 1. Crie um arquivo manifest.txt, ou com qualquer outro nome e coloque isso dentro dele: Manifest-Version: 1.0 Main-Class: ClassePrincipal 2. Rode o jar.exe com os seguintes parametros: jar cvfm classes.jar manifest.txt -C foo/ . ^---- incluir esses arquivos ^-------- nome do manifesto ^--------------------- nome do jar ^------------------------ inclui manifesto ^------------------------- especifica o nome do jar ^-------------------------- verbose ^--------------------------- novo arquivo Isso deve fazer funcionar.
-
O JAR rodou aí com você?
-
Olá meus caros Hospedei uma página de teste num servidor não brasileiro e, como esperado, o servidor estava em uma zona diferente. Se não me engano, 3 horas a frente. Com meus humildes conhecimentos de PHP, não consegui nada, e tá desse jeito mesmo. Em Java, tem funçoes pra, por exemplo, somar 3 semanas, 2 dias e duas horas ao dia atual. Assim, já se calcula a nova data, levando em consideração ano bisexto, 30/31 dias, e tudo mais. Tem como fazer isso em PHP? (de um modo viável... ) falou.
-
100kb de codigo fonte? Olha, ou essa página é muito grande, ou você tá usando um péssimo editor HTML. Pesar mesmo, não pesa muito, pois 100kb é bem rápido pra se pegar, mesmo com net discada. O problema maior são as figuras mesmo. O que acontece muitas vezes é que alguns "editores", como o Word, enchem a pagina com besteiras. A cada linha, ele fecha todas as tags de estilo e abre novamente. O cabeçalho é cheio de coisas inuteis, como a versão do office. Entre outras coisas. O melhor mesmo é usar um editor mais apropriado, como o Dreamweaver, ou o bloco de notas! Ah sim, geralmente páginas bem grandes, de grandes portais, não passam de 40kb. A da ScriptBrasil só tem 15kb, por exemplo. E é que tem muitos frames, estilos, etc.
-
Pra pirataria, todo meio de comunicação serve. Claro que com o p2p, ficou muito mais facil compartilhar coisas piratas, e muito mais dificil de pegar os infratores, mas isso não significa que seja culpa das redes ponto a ponto. Antes delas existirem, já existiam os sites com pirataria. Nem por isso os sites são considerados pirataria, ou assunto proibido. Antes dos sites www, ainda na BBS, tinha pirataria tb! Aliás, tem até forum sobre pirataria... Pois é, respondendo à pergunta, eu acho que o melhor seja um dos "Kazaa Lite", pois eles não têm spyware, ou outros softwares maliciosos, como as versões originais do Kazaa, além de serem mais leves.
-
Tem sim... você tem que pegar o gPopper. É tipo assim: o programinha se conecta ao Gmail e baixa as msgs pra ele. Aí, ele abre um servidor POP3 e SMTP no seu pc (localhost) e repassa pros programas. Eu nem uso muito, mas funciona.
-
Teoricamente, não é pra ter limites para o método POST. Mas pelo que pesquisei, alguns servidores antigos não trabalham bem com dados que ultrapassam 2, ou 4kb. Ainda assim, é um limite bem alto.. Acho que não tem como exceder isso com um simples formulário. O melhor mesmo é testar o seu servidor e ver até onde ele aceita.
-
Voce quer algum programa que façam letras ficarem passando na tela q nem matrix? porque tipo... pra q ser um filme especifico, se você não vai conseguir destinguir mesmo? Se for só letras estilo matrix, só o que tem por ai são screen savers...
-
Tente reinstalar o JDK. O melhor é baixar de novo do site da Sun, pois a instalaçao parece danificada.
-
Basta lembrar que quando não tiver mais o que ler, o readLine() returna null
-
Dá uma olhada em Control Center / Regional & Acessibility / KHotKeys. Uma maneira melhor de fazer isso é indo em Control Center / Regional & Acessibility / Hotkeys e definindo a tecla de atalho "Print" pra o programa KSnapshot (K Menu / Graphics / More Programs / KSnapshot). É até melhor doq capturar direto, pois tem mais opções. Por ultimo, você pode criar um script sh que faça o seguinte: xwd>imagem.xwd convert imagem.xwd imagem.jpg rm imagem.xwd Depois, basta setar uma teclar de atalho pra esse script. Pode ser feita uma melhoria pra ele capturar uma tela seguida da outra, ao invés de substituir a anterior...
-
É bom entender que a classe FileReader te retorna um stream, já que é derivada da InputStreamReader. Esses streams padroes (sem buffer) só têm capacidade de ler um byte por vez. Dessa forma, é preferivel converte-los para BufferedReader. Pra saber como fazer isso, dá uma olhada no outro tópico seu (sobre o codigo q não funcionou). Depois da "conversao", basta usar o readLine() pra ler uma linha inteira. Entenda "linha" como uma sequencias de caracteres até o Carriage Return e/ou um Line Feed (vulgarmente conhecidos como Enter).
-
Não conheço o JBuilder X, mas acho que você deveria optar por uma IDE gratuita e mais simples se o projeto não for muito complexo. JCreator é ótimo para testes e programas pequenos. Para os projetos mais complexos, aconselho o Eclipse, que é gratuito.
-
Olha esses links: JBuilder - 1 JBuilder - 2
-
Foi mal não ter comentado mais sobre o codigo ontem, é que estava sem tempo. Como já tinha conseguido fazer funcionar, postei logo. Esclarecendo: conforme documentação, o método read() lê somente bytes. Não que eles sejam inuteis, mas, nesse caso, são incovenientes, no minimo! Ficar convertendo de byte pra inteiro, string, float não é nada pratico. Já o BufferedReader nos oferece um leque bem maior de metodos para ler o console (ok, exagerei... só tem 1 metodo a mais). Não sei se são todos, mas eu prefiro ler tudo como String e dpois converter. Pra fazer isso, basta usar o metodo readLine(). Só um detalhe: se voce digitar no menu um numero de 3 algarismos, ele vai imprimir na tela 4 linhas. Uma para cada algarismo e outra para o Enter. Já o .readLine() não traz o Enter. Bem melhor! A diferença entre usar um try catch para um throw é a seguinte: no primeiro, você capturou o erro (catch). Nessa captura, você pode especificar o que fazer. No segundo método, você passou o erro pra frente, pra classe que chamou esse metodo. Se ela souber cuidar do erro, ótimo. Senão, o erro pode ficar pulando de mao em mao até estourar numa classe despreparada e fazer seu programa morrer rapidinho. então, o melhor a fazer é capturar e tratar o erro o quanto antes, a menos que você trabalhe pra Microsoft. Té +! ps.: O método read() retorna um numero inteiro, ainda que leia um byte. Para fazer essa conversão, é utilizada a tabela ASCII. Por essa tabela, o caractere '1' possui código 49. Se quiser consultar a tabela inteira, www.asciitable.com.
-
Se a classe é comercial, o unico jeito de ter acesso a ela é comprando, claro. Pelo menos pelo que eu entendi, a versao completa te permite fazer o que tu quer. E, na verdade, o codigo da Applet está no arquivo JAR. falou.
-
eis o codigo corrigido: import java.io.*; public class Transf { public static final int GRAUS = 90; public static final int GRADOS = 100; public static int result; private static boolean emgraus(int auxgrados) { result = (GRAUS * auxgrados) / GRADOS; System.out.println("São " + result + " graus!"); return true; } private static boolean emgrados(int auxgraus) { result = (GRADOS * auxgraus) / GRAUS; System.out.println("São " + result + " grados!"); return true; } // A criacao de uma tabela de codigos // facilita muito a leitura final do source. public static final int MENU_SAIR = 0; public static final int MENU_GRAU = 1; public static final int MENU_GRADO = 2; public static final int NAO_DEFINIDO = 4; public static final int ERRO = 5; public static void main(String a[]){ int x = NAO_DEFINIDO; int z = 1; BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); while (x != MENU_SAIR && x!= ERRO){ System.out.println("1 para graus - grados, 2 para grados - graus e 0 para sair!"); try{ x = Integer.parseInt(bf.readLine()); } catch (Exception ioe) { System.out.println("Excessao: " + ioe); x = ERRO; } if (x == MENU_SAIR || x == ERRO){ System.exit(0); } if (x == MENU_GRAU){ System.out.println("Digite o correspondente em graus."); try{ z = Integer.parseInt(bf.readLine()); } catch (Exception ioe) { System.out.println("Excessao: " + ioe); } emgrados(z); } else if (x==MENU_GRADO){ System.out.println("Digite o correspondente em grados."); try{ z = Integer.parseInt(bf.readLine()); } catch (Exception ioe) { System.out.println("Excessao: " + ioe); } emgraus(z); } } } } Alterei todos as chamadas para o read(). Alem disso, corrigi o nome da classe, que estava em minusculo. falou!