A comunidade brasileira de desenvolvimento e programação de jogos.
3D Esporte

Corrida de Rua 

Autor: Aziz
Jogo de corrida em 3D usando Delphi + GlScene + ODE
modelos 3DS feitos no Wings 3D

Controles
direcionais acelera, ré/freio, direita e esquerda

barra de espaço freia as 4 rodas

letra 'R' da reset no carro

letra 'P' pausa/continua o jogo

'+' afasta a câmera
' - ' aproxima a câmera
'/' eleva câmera
'*' abaixa câmera

letra 'd' modo Debug...só pra mim usar mesmo...

7% ----------
Criei um formato próprio de arquivo para guardar definições dos carros(marca, nome, ano, vel. máxima, rigidez das suspensões, peso, posição das rodas, e etc...
criei um programa para gerar estes arquivos, e o jogo ja esta carregando os arquivos normalmente :)

em breve colocarei o código fonte free pra quem quiser aprender sobre programação de jogos!

10% ----------
Agora com 2 carros, um carro controlado pela CPU que tenta te perseguir..AI

15% ----------
Agora os carros tem mais realidade, consegui colocar parametros como velocidade maxima, torque, RPM e marchas
Mudei todo o codigo do carro para processar mais rapido e agora tenho a possibilidade de inserir varios carros na pista.
Os carros agora tem reflexão da luz conforme a o angulo e a posição da camera.

16% -----------
Fiz uma pista decente :P
Adicionei novos controles de camera '/' e '*'

23% -----------
Reset agora coloca o carro direitinho na pista e no sentido certo!
Criei um Mapeador de pistas para criar a linha de IA da CPU
Carro com inteligencia artificial para correr na pista
Contador de Voltas
Ainda falta fazer os carros com que os carros da CPU façam ultrapassagens
Alterei a forma como a pista é carregada, agora é em 2 partes(uma é onde os carros tem contato e a outra só para decoração, isso ajuda a aliviar memoria

32% ------------
depois de um bom tempo sem atualizações....
Alem do Uno agora temos uma Ferrari F50 Manarelo, só para testes, não pretendo incluir no jogo oficialmente.
Cores!! SIM agora cada carro tem a sua cor
Menus!!!!! nos menus vc pode escolher a resolução e entrar no jogo..só isso por enquanto
ao pausar o jogo aparece escrito Pausa na tela e antes de iniciar a corrida tem o famoso 3..2..1...
ao dar 2 voltas na pista o jogo termina e volta para o menu
o restante das atualizações ficaram por conta de modificações internas para deixar o jogo mais rápido e estavel.

50% ---------------
Faz tempo que não mexia no jogo mas tive um tempinho e coloquei opção de escolher a pista e a cor do carro
tambem melhorei alguns bug que causavam erro
o provimo passo é criar carros e pistas....

60% ---------------
* Bug que fazia os carros serem arremessados sem motivo esta 100% corrigido
* Criação de carros facilitada, não precisa mais indicar as dimensões do carro e das rodas no CarDef, o jogo ja calcula automaticamente.
* Aplicação de texturas no ceu e horizontes
* Suporte a texturas TGA com transparência nas pistas.
* Objetos sem colisão nas pistas agora estão dentro do mesmo arquivo 3ds, objetos sem colisão usam nomes com prefixo SC_
* Nova Pista, convertida do jogo Racer
* Compilação alternativa do jogo inclusa como CorridaPIII.exe que pode ser uma alternativa para rodar o jogo caso de erro.
* Muitas capotagens, modificações feitas na física do jogo para deixar o jogo mais divertido
* Gravação de vídeos integrada basta apertar a tecla "g" para iniciar/finalizar a gravação, arquivo video.avi é salvo na pasta do jogo

62% -------------
* Correção do Bug de gravação de vídeos que só permitia gravar em 320x240
* Arquivo de definições dos carros alterado para formato INI
* Possibilidade de definir o atrito dos pneus
* Limitação dos ajustes de câmera
* Tecla TAB permite ver a câmera dos oponentes durante o jogo
* Alterações no layout dos menus
* Telas de menu com resolução fixa em 800x600, agora as opções de resolução são apenas para a corrida
* Opponent list
* Cor do carro salva no arquivo de configurações do jogo
* Ao fim da corrida exibe uma tela de resultados e tempos
* Marcação da posição inicial dos carros no mapa
* Melhorias na renderização do mapa:
- Novo Ceu
- Objetos do mapa com prefixo T_ indicam que é um objeto com transparência
- Objetos do mapa com prefixo SC_T_ indicam areas sem colisão que contem transparências
* Otimizações:
- Remoção de um timer para obter performance
- Reescrita das classes que controlam os carros
  Cadastro: 26/11/2006
Atualização: 02/02/2008
Status: 062% concluído
Views: 6506

Arquivos 

Corrida 0.62 (02/02/2008 01:20)
Corrida 0.60 (27/12/2007 21:47)
Corrida 50pct (19/11/2007 18:48)
Corrida 40pct (02/04/2007 15:25)
Corrida 32pct (26/03/2007 18:14)
Código-Fonte (19/12/2006 09:21)

Imagens 

Foto1Foto2Perseguiçãopista nova
Corrida 23%3-2-1- Vai!PausaMenu
Pista Pro!Agora com lista de oponentes

Discussão 

 

Entrar no Tópico

Aziz Pessoal coloquei no site ( Logo na home do meu site tem as instruções necessárias para quem quiser ajudar no desenvolvimento do jogo! falow
Tydres O contador de voutas deve começa no 0/2 porque ele conta quantas voutas vc seu não em que vouta vc tá!
Vinicius Ghellere Aziz tem uma coisa que acho que vc deveria mudar, no marcador de voltas começa 0/2, acho que teria que ser 1/2, pq vc esta na 1º volta de 2, entendeu? bom pelomenos nos jogos famosos sao todos assim. outra coisa antes da largada no 3,2,1 deveria poder acelerar para aumentar a rotação do motor e dar aquela cantada de pneu, sabe?
Tydres Agora o nome tá esplicado!
Aziz E ai pessoal blz? minha ideia é ter um sistema de grana pra comprar acessorios para o carro e comprar carros novos tbm, acho isso bem legal. o nome Corrida de Rua eu escolhi pq quero criar uns circutos baseados em ruas e estradas brasileiras, tipo aqui em SP eu quero criar em 3D um pedaço da marginal Tiete/Pinheiros e tbm quero fazer uma que passe pela 23 de maio e pelo complexo Ayrton Sena que passa debaixo do Ibirapuera...mas isso ainda vai demorar muito pra ser feito... ghelleree, se quiser pode me mandar emails pra gente conversar sobre a DLL, blz
michelfany tem um pouco de ligaçao sim.. CORRIDA DE RUA>.. e os karro taum korrendo na rua dasudhuadhauhdaudhaus
Tydres Só o nome que tá ficando sem ligação com o jogo! mas tá bacana!
Tydres Isso só no final msm! É tipo granturismo!
michelfany FIkaria algo tipow +- Grand Turismo... Jah ouviu falar¿
Vinicius Ghellere Eu acho que o Aziz esta pensando nisto, mas penso que isto ficaria mas para o final do jogo.
Tydres Isso! personalização do carro! e tambem personalização motora! Podia colocar um sistema de grana quue o cara ganhaa por corrida!
Vinicius Ghellere Tydres vc fala para colocar adesivos, mudar a saia, essas coisas?
Tydres Podia fazer modulo de personalização de carros no jogo!
michelfany Kra... muito massa mesmo! O interessante eh pq saum de karros komuns as pessoas.. nun tem akeles karro ke soh pessoa sangue bom pode komprar naum! tem karro ke kualker um pode ter! xD
Vinicius Ghellere Aziz estou fazendo a parte online em uma DLL como vc falou eh mais seguro e mais facil para vc implementar no jogo, ja fiz a parte de autenticação, agora vou fazer as funções para mudar senha e nick. sei que vc esta meio ocupado mais quando der um tempinho ai me fala que eu te mando a dll
Vinicius Ghellere não esqueça da Volkswagen Kombi tambem hasuhuashuashuas
small_4889 Aziz não se esqueça do GOL!! e OPALA rsrsr
Aziz Desculpa não responder antes mas essa semana foi muita correria com o começo das aulas... small, quem sabe na próxima versão ele rode no seu pc, sempre que posso tento corrigir os bugs que são informados... Tydres, pretendo criar mais carros sim, especialmente os nacionais estou louco pra criar um Celta e um Palio
small_4889 Ahh desisto.. vo joga no PC da sala mesmo rsrs Aziz seu jogo está maneiro por demais! parabens
Vinicius Ghellere small tenta baixar esta versao fix para windows vista
Tydres No que paia vc num ter conseguido em small! O jogo é muito maneiro!
small_4889 Baixei... e ocorre o mesmo problema =/
Tydres Ou vc pretende por mais carros no jogo?
Vinicius Ghellere cara ja saiu uma versão mais atualizada a 0.62 vc esta usando a 0.60.
small_4889 P4 3Ghz, WinXP Estranho.. no outro PC aqui de casa(P4 tbm) com WinVista roda normal
Aziz small, manda a versão do win(tipo XP, Vista, 98, 2k, etc..) e o processador.. ghelleree, cara acho que vai demorar a proxima versão sim, pq agora eu to tendo aula e to sem tempo nenhum só acordo vou protrampo depois pra facul e depois pra casa dormir...mó droga.. o seletor de cor é uma boa, vou tentar colocar na proxima versão Tydres, as pistas foram convertidas do jogo Racer, mas a versão final vai ter pistas proprias
Tydres Cara foi vc quem fêz as pistas?
Vinicius Ghellere small qual eh o seu windows? e placa de video? posta uma Screen do erro
small_4889 AQui deu um erro estranho nesta versão... quando a aplicação começa.. logo de cara aparece um erro.. "alguma coisa enumerator".. dou OK.. dai o game não entra.. fica paralisado... Não tive esses problemas com as versões sem o MENU da entrada... Vc sabe PQ?
Vinicius Ghellere mais uma dica para a proxima versao, na parte de seleção de cor do carro vc podia colocar uma coisa deste tipo: este tipo de seleção de cor fica melhor, e ao mesmo tempo q vai mudando a cor muda no carro tambem isto eh melhor para escolher a cor.
Vinicius Ghellere E ai Aziz sera q demora muito para sair a proxima versao?
Vinicius Ghellere Aziz mandei uma mensagem privada para vc sobre o programa do servidor, da uma olhada la blz.
Aziz se der pra fazer isso é bom, ai se um dia precisar usar em computadores diferentes tbm fica facil né...
Vinicius Ghellere mais em pensei em faze no mesmo computador os servidores para aliviar os programas
Aziz o problema de usar um esquema desses é que custa caro manter 5 servidores dedicados, manter um ja é caro imagina 5!!
Vinicius Ghellere eu tenho experiencia com servidores de muonline e esse servidor dexa tudo na memoria, os usuarios e os monstros (milhares de monstros), e eu ja vi servidores com 200 usuarios sem lag, sem cair, isso que usa banco de dados direto. esses servidores usam subservidores acho que nos podiamos fazer isso, um servidor de autenticação, e outros subservidores, por exemplo o cara autentica dai vai ver o servidor que tem menos usuarios e "manda" o usuario para la, assim ficaria varios servidores que fazem a mesma coisa mais com menos usuarios, ao inves de um servidor um 1000 usuarios, teriamos 5 servidores com 200 usuarios cada um. o usuario nao iria perceber isto entende?
Vinicius Ghellere Lembrei de um jogo que nos precisamos jogar bastante, esse jogo eh oq nos vamos fazer. TrackManiaNations eh de corrida online
Aziz é isso ai, ele pode ir seguindo os dummys até receber a próxima posição...ficaria perfeito! é melhor usar MySql pq é free... só não sei como que é manter tanta gente conectada num servidor, a principio o banco de dados só vai ser usado para autenticar e pegar as informações do jogador... a lista de usuários conectados vai ter que ser mantida na memória ou em arquivos no disco, algo que seja bem rápido esse é um ponto critico, nem tenho idéia das tecnicas que se usa pra manter um servidor com muita gente conectada sem ele cair ou ficar lento...
Vinicius Ghellere Eu ja joguei MUITO gunbound uahuauahuauhua, e sei como funciona. eh q eu tinha pensado em algo diferente mais entendi oque vc quer, ja no caso do modo Posicional eu pensei assim criar um "CPU" sendo o outro jogador ai ao receber a posição este "CPU" iria seguir um DummyCube com esta posição recebida, como os cpus atual do seu jogo seguem os DummyCubes. entao quando a pessoa for em Modo Online tera uma tela de login para poder continuar certo? entao eu vou ir fazendo isto, fazer o servidor receber as informações de Login e senha, para autenticação e responder ao cliente se for bem sucedido. em qual banco de dados? eu tenho mais experiencia com Mssql e mysql.
Aziz Bom, vou te dar umas dicas do que precisa para o jogo funcionar online Primeiro ao entrar no jogo em modo online tem um chat room e uma lista de salas. as salas são criadas pelos próprios jogadores, um jogador cria uma sala e define opções daquela sala tipo, qual a pista, qtd de voltas e etc... e o cara fica na sala esperando outras pessoas que estão no chat room entrar na sala dele Quando ele vai iniciar uma partida online vc tem que garantir que todos os computadores estão sincronizados, ou seja, quando o dono da "sala" clica em iniciar todos os computadores fazem o load da pista e dos carros, mas cada computador tem um desempenho diferente então após o carregamento antes de dar o sinal verde o servidor tem que garantir que tá todo mundo carregado pronto pra começar durante a corrida existem duas técnicas de sincronização da posição dos carros, por Input e por Posição Input: essa técnica manda apenas as teclas que os jogadores estão pressionando e o...
Vinicius Ghellere Blz, estou pensando em fazer assim cada aplicação passa a informação da posição do carro para o servidor, ele repassa para todas as outras aplicões conectadas a ele, quando a aplicação receber a posição do outro jogador um "CPU" iria atras dessa posição, nao sei se vc entendeu, o "CPU" seria o outo jogador.
Aziz servidor separado é melhor pois assim é possível manter uma comunidade de jogadores cadastrados e num futuro poder até gerar alguma renda em pro do desenvolvimento to jogo
Vinicius Ghellere eh uma boa ideia, nunca mexi com DLL mais vou começar a estudar. EDITADO: esqueci de perguntar, vamos fazer o Servidor junto com o jogo ou fazer o Servidor em um programa separado? eu acho melhor separado mais pensa ai dai vc me fala, ja vou começar a desenvolver alguma coisa
Aziz cara em breve vou precisar de ajuda sim, eu estava pensando em concentrar as funções de comunicação online do jogo em uma DLL assim seria mais facil dar manutenção e garantir segurança, o q vc acha?
Vinicius Ghellere mais umas coisas: eu percebi que quando o CPU perde o controle do carro ele continua acelerando acho q teria q fazer ele parar de acelerar ou diminuir a aceleração para conseguir controlar o carro mais rapidamente, outra coisa sobre eles capotarem na curva, tenta faze assim tpw, um pouco antes da curva ve se a curva tiver um angulo muito acentuado da uma freida antes e faz a curva sem acelerar isso da muito mais controle. e ja estou pensando como fazer o modo online, se vc precisar de ajuda claro.
Vinicius Ghellere Aziz outra coisa, acho que ficaria melhor se aumentase o atrito da pista, tambem fazer atritos diferentes Ex.: no asfalto = 5, grama =2, etc, acho que para fazer isto teria que separa a pista em farios arquivos dai cada um seria um tipo de atrito.
Tydres Cara essa nova versão ficou muito boa! Minha ferrari propria para Drift! Ou os adversarios estão virando de cabeça para baixo toda hora!
Vinicius Ghellere nossa quadros inteiros gera arquivos muito grandes, estou baixando o divx do baixaki mas nao sei se é o para gravação
Aziz eu uso a opção de quadros inteiros sem compactação ou DivX mas o divx só funciona se vc tiver os codecs de gravação instalados no micro...tem no baixaki pra download voce pode tentar outros mas vai dar erro se o codec não estiver instalado...
Vinicius Ghellere a outra coisa que eu esqueci, quando eu aperto "g" dai qual configuração de video eu uso para gravar? pq eu nao consegui gravar

Desenvolvido e administrado por: Luiz Pestana (2004 - 2014)