GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Retorno da GMBR!!!
por theguitarmester Ter 19 Mar 2024, 22:38

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16

» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05

» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55

» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39

» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28

» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01


Organizando melhor seu trabalho

5 participantes

Ir para baixo

Organizando melhor seu trabalho Empty Organizando melhor seu trabalho

Mensagem por †Ceifador Dom 05 Set 2010, 11:15

Nome: Organizando melhor seu trabalho
Descrição: Dicas e boas práticas para tornar seu projeto mais organizado
Nível de dificuldade: Indiferente
Requerimentos: Indiferente

Respondendo dúvidas aqui no forum reparei que muitos usuários não tem o costume de organizar os recursos e códigos do projeto, o que é uma prática muito desaconselhável em programação, não só pela confusão que se torna o trabalho como a ocorrência de conflitos e erros que isso pode ocasionar.
Nesse pequeno tutorial irei mostrar algumas "boas práticas" que podemos levar para nossos projetos, de forma rápida e simples.

- Preparando os recursos
Em geral, a primeira coisa que fazemos num projeto é montar nossa biblioteca de recursos (sprites, sons, etc) nas pastas do programa, e onde também começam os problemas.
Cada item no jogo possui uma natureza, seja imagem, som, script, objeto e assim por diante. Então, porque não identificarmos estes itens de forma padronizada? É mais fácil chamar uma sprite apenas de "bola", mas concordam que quando o jogo tiver 30, 50 ou quem sabe mais de 100 itens diferentes será complicado diferenciar o que é o que?

Vejamos alguns exemplos:
bola
bola
bola

Calma lá †Ceifador, ai você tá de sacanagem! Na verdade não, nesse exemplo o suposto autor teria adicionado 3 itens diferentes, sendo 1 sprite, 1 som e 1 objeto. Isso é até muito comum dentre os iniciantes, não por preguiça ou outra coisa, mas simplesmente pela falta de experiência.

Vejamos agora como seria o mais correto:
sprBola
souBola
objBola

A coisa já fica diferente certo? Podemos até não reconhecer de imediato cada sufixo
utilizado, mas ninguém terá dúvida que são 3 itens diferentes.
O padrão usado é bastante simples, apenas adiciono um prefixo (parte inicial da palavra) de 3 letras conforme o recurso, ex:

Sprite = spr
Sound = sou
Music = mus
Object = obj
Script = scr

Isso não é uma regra fixa, cada um pode usar o prefixo que achar melhor, com mais ou menos letras, o importante é identificar corretamente o seu recurso/item.
Outro ponto é a separação de palavras quando nosso item possui mais de uma no nome. Vocês já devem saber que em programação jamais se usa espaço ou caractere especial pra nomear coisas, então as formas mais corretas de separar palavras seria através de "_" (underline) ou letra maiúscula, ex:

spr_bola_amarela
sprBolaAmarela
sou_explosao_barril
souExplosaoBarril

Eu particularmente prefiro as letras maiúsculas, mas não há problema algum em usar "_". Isso tudo pode parecer frescura, mas há uma função no Game Maker que nos prova o contrário. Na parte superior, logo acima da barra de ferramentas há um menu chamado Script, e nele há a opção "Check Resource Names".
Se vocês clicarem nessa opção verão uma pequena janela listando todos os conflitos de nomenclatura em seu projeto. O correto é que não haja nenhum, apenas o texto "". Façam o teste, acredito que muitos irão se surpreender com a quantidade de conflitos existentes no jogo, e muitas vezes aquele errinho chato que a tempos você tenta desvendar é fruto de um deles.

- Organizando os recursos
Outro ponto que é comum ser deixado de lado é a simples disposição dos itens em sub-pastas. Já me deparei com editáveis com tantos recursos que a lista até bugava na hora que clicava em Sprites ou sounds. Pensem então quando o cara for escolher uma sprite na edição do objeto, ficará uns 3 minutos navegando o menu dropdown até achar o que deseja.
Usar ou não sub-pastas não irá gerar conflitos ou erros como na nomenclatura, mas não é menos importante. Temos que ter bom senso e pensar como aquilo irá afetar o trabalho no futuro, principalmente se houver a possibilidade de outras pessoas terem acesso ao arquivo editável.

vejamos alguns exemplos:
sprMarioPequenoPara
sprMarioPequenoAnda
sprMarioPequenoCorre
sprMarioPequenoPula
sprMarioPequenoNada
sprMarioGrandePara
sprMarioGrandeAnda
sprMarioGrandeCorre
sprMarioGrandePula
sprMarioGrandeNada
sprLuigiPequenoPara
sprLuigiPequenoAnda
sprLuigiPequenoCorre
sprLuigiPequenoPula
sprLuigiPequenoNada
sprLuigiGrandePara
sprLuigiGrandeAnda
sprLuigiGrandeCorre
sprLuigiGrandePula
sprLuigiGrandeNada

Fica até difícil de ler com uma lista contínua como essa, imagine com 10 vezes isso.

Vejamos agora como ficaria de forma organizada em sub-pastas
Mario
- Pequeno
- - sprMarioPequenoPara
- - sprMarioPequenoAnda
- - sprMarioPequenoCorre
- - sprMarioPequenoPula
- - sprMarioPequenoNada
- Grande
- - sprMarioGrandePara
- - sprMarioGrandeAnda
- - sprMarioGrandeCorre
- - sprMarioGrandePula
- - sprMarioGrandeNada

Luigi
- Pequeno
- - sprLuigiPequenoPara
- - sprLuigiPequenoAnda
- - sprLuigiPequenoCorre
- - sprLuigiPequenoPula
- - sprLuigiPequenoNada
- Grande
- - sprLuigiGrandePara
- - sprLuigiGrandeAnda
- - sprLuigiGrandeCorre
- - sprLuigiGrandePula
- - sprLuigiGrandeNada

Facilita bastante certo? E ainda tem a vantagem de podermos "contrair" as pastas
deixando só o que precisamos visível, ex:

Mario >

Luigi
- Pequeno
- - sprLuigiPequenoPara
- - sprLuigiPequenoAnda
- - sprLuigiPequenoCorre
- - sprLuigiPequenoPula
- - sprLuigiPequenoNada
- Grande >

Para criar uma sub-pasta é muito simles, basta clicar com o botão direito na pasta principal e escolher "Create Group". Você pode repetir isso criando quantas sub-pastas achar necessário.

Aproveitem mais esse tutorial e qualquer problema já sabem, é só postar.


Última edição por †Ceifador em Sáb 11 Set 2010, 13:41, editado 3 vez(es)
†Ceifador
†Ceifador

Data de inscrição : 28/08/2010
Reputação : 0
Número de Mensagens : 154
Prêmios : Organizando melhor seu trabalho Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Organizando melhor seu trabalho Empty Re: Organizando melhor seu trabalho

Mensagem por SIGILOSO Dom 05 Set 2010, 11:23

Mto bom, essas dicas podem criar uma grande diferença em projetos desorganizados! =D
Bem, acho que o
Janx deve ter tido uma certa dor de cabeça pra entender os códigos do Gun Block... xD
Parabéns, é desse tipo de tutorial que a GMBR precisa! =D
afro
SIGILOSO
SIGILOSO

Games Ranking : Nota A

Notas recebidas : A+A+A+A+A+A+A
Data de inscrição : 06/06/2009
Reputação : 39
Número de Mensagens : 2267
Prêmios : Organizando melhor seu trabalho Empty

Medalhas x 0 Tutoriais x 2 Moedas x 0

Ouro x 4 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Organizando melhor seu trabalho Empty Re: Organizando melhor seu trabalho

Mensagem por fenanco Dom 05 Set 2010, 11:56

Muito bom seu tutorial vai ajudar muito os iniciantes!!
fenanco
fenanco

Data de inscrição : 16/07/2010
Reputação : 0
Número de Mensagens : 88
Prêmios : Organizando melhor seu trabalho Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Organizando melhor seu trabalho Empty Re: Organizando melhor seu trabalho

Mensagem por Super Games Dom 05 Set 2010, 12:39

Otimo tutorial amigo!
Eu organizo meus sprites e objetos e grupos ingual você escreveu.
Creio que seu tuto vai fazer que muita gente organiza seus trabalhos.

Até!
Super Games
Super Games

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 10/06/2010
Reputação : 36
Número de Mensagens : 2799
Prêmios : Organizando melhor seu trabalho Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Java
  • C ou C++


Ir para o topo Ir para baixo

Organizando melhor seu trabalho Empty Re: Organizando melhor seu trabalho

Mensagem por vinians Dom 05 Set 2010, 13:29

Excelente tutorial. Ja vi muitas engines extremamente bagunçadas! Não que isso as torne ruins, mais dificulta o trabalho em grupo e o próprio programador caso precise alterar algo mais tarde.

O padrão usado é bastante simples, apenas adiciono um sufixo (parte incial da palavra)...
Não seria "prefixo" ao invez de "sufixo" ??
flw!
vinians
vinians

Games Ranking : Nota B

Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Reputação : 90
Número de Mensagens : 2715
Prêmios : Organizando melhor seu trabalho Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Construct 2
  • Java
  • C#
  • Javascript
  • C ou C++
  • Outros


https://vinians.itch.io

Ir para o topo Ir para baixo

Organizando melhor seu trabalho Empty Re: Organizando melhor seu trabalho

Mensagem por †Ceifador Dom 05 Set 2010, 13:43

vinians escreveu:Não seria "prefixo" ao invez de "sufixo" ??
Desculpem, escrevi o texto meio no improviso e vacilei nessa parte. Valeu por avisar.
†Ceifador
†Ceifador

Data de inscrição : 28/08/2010
Reputação : 0
Número de Mensagens : 154
Prêmios : Organizando melhor seu trabalho Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Organizando melhor seu trabalho Empty Re: Organizando melhor seu trabalho

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo


 
Permissões neste sub-fórum
Não podes responder a tópicos