SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida :D
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
CASA L MODELO 3D FREE FIRE
Opinião Sobre Meu jogo
Sugestões de Site pra Baixar Música e Efeitos Sonoros de Graça
Jogo de Tabuleiro Online ou Offline?
ALGUEM PRECISANDO DE MODELADOR NA EQUIPE?
Nao consigo fazer criar um coliso com o meu personagem com animaçao
PREECISO DE ALGUE QUE SAIBA MECHER COM O PHOTON
Molodias sem direitos autorais (Free)
Trailer do meu jogo
movemetacao em circulo na unity
TRIGGER EM COLLIDER
Preciso De Dicas Sobre Publicar Na Play Store
Como parar de produzir animação quando o jogador colidir?
problema com o standard assets
Lista de Menu Dinâmica
reconhecimento de fala simples
Versão desatualizado do game no poder jogar PHOTON PUN
Script se referenciando a outro componente que não esta anexado a ele?
Erro para ler banco de dados com C#
Como ativar o script só pra quem ter a tag "Player"
[Projeto] Until Lights Out 2021/2022
Restringir a Rotação de um objeto até um certo ângulo!
Enemigos atravesaveis
[JOGO] A Passagem Disponível Para Pc/Android.
Unity - Erro ao rodar o VídeoPlayer
ALGUEM PRECISNDO DE MODELADOR NA EQUIPE?
ERRO POR CONTA DE REFERÊNCIAS APÓS DESTRUIR GAMEOBJECT
Coloca 2 script juntos iria ferra a otimização ?
Código para drop de itens conforme raridade (probabilidade)
Meu jogo na Playstore kkkkk
Otimizando grandes mapas - (Shadows,Lights,GI ...)
Camera se move sozinha quando uso o controle.
Unity - Clique do Mouse
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
[TUTORIAL] Campo de visão dos inimigos (Enemy FOV) com Raycast ou OverlapSphere
Como criar jogo de cartas
Macro com Unity
Shader Graph não funciona direito em RunTime, mas funciona na Scene
Editar animação 3d dentro da unity
[RESOLVIDO] Limitar a rotação da câmera entre dois ângulos
Ajuda para recursos do meu jogo
Posso usar o sistema de marcas de derrapagem como base para outro sistema?
[TUTORIAL] Systema Simples de Quest
RigidBody com Box Collider Travando na Aresta de um Box Collider.
animation trigger não funciona direito
Fazer o player automaticamente ir para um sitio quando não tem balas
Tocar som diferentes com bools
problema com velocidade da patrulha
Gerar APK
Performance - texture 'lod' (MIPmap) DDS
como fazer um obejto fica virado para camera???????
[RESOLVIDO] Cena não é lida...
Meu jogo disponivel pra pré compra na steam
Meus jogos podem dar uma olhada
Preciso de uma mão 3d c4d, para unity
Trocar de cena ao matar inimigo
Animação com frames travados (igual Dragon Ball Fighterz)
Unity - Scene muito pesada. Como otimizar?
Como criar área para movimentar a câmera (MOBILE)
Tranformar um numero baixo em uma pontuação alta
[TUTORIAL] BeatMapping com Unity
[RESOLVIDO] Como criar um botãoUI que liga e desliga uma lista de objetos?
selecionar area pelo touch
Maximizar view da cam
Alguem Pode me ajudar com A Movimentação ? Unity scripts
Alguém q saiba mecher com Particle System? pago por particula!
AJUDA COM MULTIPLAYER
Efeito FADE IN e OUT por meio de trigger
Divulgação do meu Livro de Fantasia Medieval: Skilled World
Anjos Lamentadores Soctor Who
Tem como fazer o inimigo andar até dar de cara com o player?
Unity drag e collider
Suavizar movimento de câmera da introdução
Ajuda com Raycast position de Prefabs (Photon + unity)
[Projeto] Jogo Ambientado no Brasil para Android
Script de tiro para o photon 2
Mudar qualidade das texturas por código?
[RESOLVIDO] Unity - Imagem no formato de um triângulo?
Tirar foto e exportar pro jogo
Gráficos estilo Genshin
level system problema
Como calcular distância entre dois pontos
Posicao do objeto diferente do setado no codigo
Sistema de pulo 3D
Procuro programador Unity para jogo 2D
Pessoal saiu a versão de testes do meu novo jogo, o Sanatório Macabro
Cinemachine - trocar de camera usando uma tecla e mouse 'lockScreen'
Sistema completo de nivel com XP + PayTime
Limitar arrays e fazer sortear um valor apenas uma vez
Como faço para variável voltar para o valor inicial
Duvida com getAxis
Fazer um detetive para sair apenas 1 vez o resultado do sorteio
Jogos NTFs
Salvar variável temporária com PlayerPrefs!?
Alguém sabe fazer uma AI para o inimigo seguir o Player em um jogo Top Down
Bug com modelo ficando invisível
Erro em sistema de dialogo...
Terreno Procedural
sistema de estamina,vida,fome e sede
Ontem à(s) 3:40 pm
Ontem à(s) 9:17 am
Qui Jan 27, 2022 10:11 pm
Qui Jan 27, 2022 5:31 pm
Qua Jan 26, 2022 8:51 pm
Qua Jan 26, 2022 8:02 pm
Qua Jan 26, 2022 2:22 am
Seg Jan 24, 2022 7:23 pm
Seg Jan 24, 2022 6:47 pm
Dom Jan 23, 2022 10:28 pm
Qua Jan 19, 2022 6:14 pm
Ter Jan 18, 2022 10:45 am
Seg Jan 17, 2022 10:36 pm
Seg Jan 17, 2022 7:48 pm
Dom Jan 16, 2022 10:31 pm
Dom Jan 16, 2022 10:01 pm
Dom Jan 16, 2022 7:17 pm
Dom Jan 16, 2022 6:56 pm
Sab Jan 15, 2022 10:09 am
Sex Jan 14, 2022 5:01 pm
Qua Jan 12, 2022 11:23 pm
Qua Jan 12, 2022 6:52 pm
Qua Jan 12, 2022 5:28 pm
Qua Jan 12, 2022 4:15 pm
Qua Jan 12, 2022 12:08 am
Ter Jan 11, 2022 6:11 pm
Ter Jan 11, 2022 6:08 pm
Ter Jan 11, 2022 11:43 am
Seg Jan 10, 2022 6:08 pm
Seg Jan 10, 2022 2:05 pm
Seg Jan 10, 2022 10:41 am
Dom Jan 09, 2022 3:48 pm
Sab Jan 08, 2022 2:58 pm
Sex Jan 07, 2022 11:06 pm
Qui Jan 06, 2022 7:04 pm
Qua Jan 05, 2022 6:13 pm
Qua Jan 05, 2022 3:19 pm
Ter Jan 04, 2022 5:51 pm
Ter Jan 04, 2022 5:41 pm
Seg Jan 03, 2022 6:07 pm
Dom Jan 02, 2022 3:46 pm
Sab Jan 01, 2022 8:10 pm
Sab Jan 01, 2022 9:55 am
Qui Dez 30, 2021 4:22 pm
Ter Dez 28, 2021 5:22 pm
Ter Dez 28, 2021 5:05 pm
Sab Dez 25, 2021 6:22 pm
Sab Dez 25, 2021 2:19 pm
Sab Dez 25, 2021 4:28 am
Sex Dez 24, 2021 11:15 pm
Qui Dez 23, 2021 11:05 am
Qui Dez 23, 2021 8:11 am
Seg Dez 20, 2021 2:54 pm
Seg Dez 20, 2021 2:09 pm
Dom Dez 19, 2021 1:33 pm
Sab Dez 18, 2021 6:46 pm
Sab Dez 18, 2021 4:37 pm
Sex Dez 17, 2021 8:52 pm
Sex Dez 17, 2021 1:42 am
Qui Dez 16, 2021 1:36 pm
Qua Dez 15, 2021 12:54 pm
Ter Dez 14, 2021 1:36 pm
Seg Dez 13, 2021 8:14 pm
Seg Dez 13, 2021 7:49 pm
Seg Dez 13, 2021 7:14 pm
Dom Dez 12, 2021 8:25 pm
Dom Dez 12, 2021 6:00 pm
Dom Dez 12, 2021 10:07 am
Sab Dez 11, 2021 11:56 pm
Sex Dez 10, 2021 8:33 pm
Qua Dez 08, 2021 11:37 pm
Ter Dez 07, 2021 7:21 pm
Ter Dez 07, 2021 7:17 pm
Seg Dez 06, 2021 10:06 pm
Seg Dez 06, 2021 2:18 pm
Seg Dez 06, 2021 6:44 am
Dom Dez 05, 2021 2:27 pm
Dom Dez 05, 2021 5:11 am
Sab Dez 04, 2021 9:02 pm
Qui Dez 02, 2021 12:00 pm
Ter Nov 30, 2021 3:52 pm
Ter Nov 30, 2021 12:14 pm
Seg Nov 29, 2021 5:18 pm
Seg Nov 29, 2021 5:17 pm
Seg Nov 29, 2021 1:17 pm
Dom Nov 28, 2021 11:52 am
Dom Nov 28, 2021 1:30 am
Sab Nov 27, 2021 4:57 am
Sex Nov 26, 2021 5:53 pm
Sex Nov 26, 2021 12:16 pm
Qui Nov 25, 2021 6:15 pm
Qui Nov 25, 2021 3:31 pm
Qua Nov 24, 2021 2:01 am
Ter Nov 23, 2021 5:11 pm
Ter Nov 23, 2021 3:48 pm
Ter Nov 23, 2021 1:12 pm
Ter Nov 23, 2021 12:38 pm
Seg Nov 22, 2021 3:20 pm
Seg Nov 22, 2021 2:29 am
SeTk
richerd
WLCS22
WLCS22
EricknhYT
BEJAOGODAO
SeTk
Tomas Turbando
JulioWinchester
locatek
RAPOzoro
Crash Psycho
Ren Allen
dutrabr100
edfisicaweb
Édipo
EricknhYT
ProBrStalker
fernando.OVS
Franttyck
BlesseD
gabrielgame6772
dutrabr100
Crash Psycho
WLCS22
dutrabr100
dutrabr100
GustavoPeky2
Nimue
verme1311
jeronimo Collares
NoctisDregon
WLCS22
Crash Psycho
dutrabr100
MayLeone
dutrabr100
dutrabr100
cyborggp
N.P.C
dutrabr100
ronigleydson
hendrick22
dutrabr100
PauloFR
PauloFR
MarcosSchultz
eduardonog30
WLCS22
SteveRogers
MarcosSchultz
NoctisDregon
diegopds
Gamergame
GustavoPeky2
Gamergame
juraulh
WLCS22
classicandsimple
SteveRogers
MayLeone
verme1311
locatek
MayLeone
MayLeone
M4x
Thedarkaay
eduardonog30
Rangel Oblivion
SteveRogers
Magnatah
NKKF
NKKF
junio132sj
MRX
junio132sj
MayLeone
WLCS22
MayLeone
Gabriel M
Valakinhas
Xavier
JãoArts
JãoArts
joaozinpedrin
Patrick
jeronimo Collares
M4x
EricknhYT
Charlesoff
capim22
EricknhYT
artplayer
M4x
M4x
Charlesoff
NoctisDregon
SgtMatuto
Pkneves

Dropdown e comparação com String

2 participantes

Ir para baixo

DÚVIDA Dropdown e comparação com String

Mensagem por Inequalis Qua Dez 23, 2020 10:18 am

Olá!
Tenho uma dúvida relacionada a comparação de Strings (É algo que parece ser simples, mas o comportamento na Unity é bizarro).
Essa variável RefreshRate é definida no inicio do script e populada na seguinte função (Essa função é chamada la no Awake, para preencher de forma dinâmica, outro Dropdown):
Código:
public void SetResolutionsDropDown() {
        Resolution[] Resolutions = Screen.resolutions;
        for (int i = 0; i < Resolutions.Length; i++) {
            if (Resolutions[i].width >= 1280 && Resolutions[i].width >= 720) {
                string ResolutionFormatted = Resolutions[i].width + "x" + Resolutions[i].height;
                if (RefreshRate == null) {
                    RefreshRate = Resolutions[i].refreshRate.ToString();
                }
                if (!ResolutionOptions.Contains(ResolutionFormatted)) {
                    ResolutionOptions.Add(ResolutionFormatted);
                }
            }
            Resolution.ClearOptions();
            Resolution.AddOptions(ResolutionOptions);
        }
    }

Logo abaixo, tenho uma função para fazer a mesma coisa, mas para outro Dropdown (Que também é chamada no Awake, logo abaixo da função anterior).
RefreshRateOptions é um list de string, definido no inicio do script:
Código:
public void SetFrameRateDropDown() {
        if (RefreshRate != null) {
            if(RefreshRate == "75") {
                RefreshRateOptions.Insert(0, "30 Hz");
                RefreshRateOptions.Insert(1, "60 Hz");
                RefreshRateOptions.Insert(2, "75 Hz");
            }         
            FPS.ClearOptions();
            FPS.AddOptions(RefreshRateOptions);
        }
    }

A questão aqui é o comportamento desse Dropdown. No play da Unity, ele carrega essas opções corretamente.
Agora, quando buildo o projeto e testo, o Dropdown carrega vazio, sem nenhuma opção.
Alguém tem alguma idéia do por que esse comportamento inconsistente?
A comparação desse if do RefreshRate retorna false, pois em um teste onde removi esse if, carregou certo.
O mistério é: Por que retorna true no Play da Unity, e false quando faço o build do projeto?
Grato pela atenção!

Inequalis
Iniciante
Iniciante

PONTOS : 628
REPUTAÇÃO : 1
Respeito as regras : Dropdown e comparação com String WvDYdlf

Ir para o topo Ir para baixo

DÚVIDA Re: Dropdown e comparação com String

Mensagem por Fagner Qua Dez 23, 2020 11:12 am

Porque você está comparando se a largura é maior que 1280 e se largura maior que 720? não bastaria checar se Altura >= 720?
Acho que você se confundiu aí.
Recomendo sempre fazer esse tipo de checagem usando o Height, pois a altura é bem padrão, já a largura varia bastante por conta de monitores wide/ultra wide/curved.

O comportamento é diferente na Unity, pois nela é mostrado apenas as resoluções da frequência atual, já na build, mostra todas disponíveis, inclusive as que tenham uma frequência diferente, digamos que seu monitor suporta a resolução 1280x720 em 60 e 75Hz, ambas serão mostradas no dropdown, parecendo que está duplicada, a string não faz referência que uma é 60 e outra 75Hz.

Sobre o segundo código, preciso saber como você está obtendo o "RefreshRate"(esse que você checa se não é nulo no if).
Fagner
Fagner
Moderador

Masculino PONTOS : 3409
REPUTAÇÃO : 661
Áreas de atuação : Modelagem 3D, Programação.
Respeito as regras : Dropdown e comparação com String Aad8pUi

Ir para o topo Ir para baixo

DÚVIDA Re: Dropdown e comparação com String

Mensagem por Inequalis Qua Dez 23, 2020 1:45 pm

@Fagner escreveu:Porque você está comparando se a largura é maior que 1280 e se largura maior que 720? não bastaria checar se Altura >= 720?
Acho que você se confundiu aí.
Recomendo sempre fazer esse tipo de checagem usando o Height, pois a altura é bem padrão, já a largura varia bastante por conta de monitores wide/ultra wide/curved.

O comportamento é diferente na Unity, pois nela é mostrado apenas as resoluções da frequência atual, já na build, mostra todas disponíveis, inclusive as que tenham uma frequência diferente, digamos que seu monitor suporta a resolução 1280x720 em 60 e 75Hz, ambas serão mostradas no dropdown, parecendo que está duplicada, a string não faz referência que uma é 60 e outra 75Hz.

Sobre o segundo código, preciso saber como você está obtendo o "RefreshRate"(esse que você checa se não é nulo no if).

Força do habito mesmo, poderia de fato fazer da forma que citou. Mas isso, só impacta no que vai ser listado no Dropdown (Não quero que liste resolução abaixo de 1280x720). Então, pode ignorar essa parte. 
RefreshRate, no meu caso retorna 75 (que é a taxa de atualização máxima do meu monitor). Nesse if, tenho 75 sendo comparado com 75, retornando false no build e true no Play da Unity. Essa variável é populada na função anterior aqui:

Código:
if (RefreshRate == null) {[size=14][/size]                    RefreshRate = Resolutions[i].refreshRate.ToString();[size=14][/size]                }

A parte que está dando esse problema:
Código:
if(RefreshRate == "75") {[size=14][/size]                RefreshRateOptions.Insert(0, "30 Hz");[size=14][/size]                RefreshRateOptions.Insert(1, "60 Hz");[size=14][/size]                RefreshRateOptions.Insert(2, "75 Hz");[size=14][/size]            }

No caso, o RefreshRate da build estaria retornando 60? Se entendi corretamente, isso poderia explicar essa diferença. Achei que o .refreshRate retornava a taxa de atualização máxima do monitor.

Inequalis
Iniciante
Iniciante

PONTOS : 628
REPUTAÇÃO : 1
Respeito as regras : Dropdown e comparação com String WvDYdlf

Ir para o topo Ir para baixo

DÚVIDA Re: Dropdown e comparação com String

Mensagem por Fagner Qua Dez 23, 2020 3:38 pm

Você está percorrendo o for checando se a resolução é maior que 720p, se for e se RefreshRate for null, você joga um valor em RefreshRate e ele deixa de ser nulo.
O problema é que esse array de resoluções tem resoluções duplicadas por conta do refreshRate diferente, mas a de 60 quase sempre é listada primeiro.
Então no RefreshRate recebe 60 e nunca vai entrar no outro IF, pois pra isso ele teria que ser 75, fazendo o dropdown ficar vazio...
Eu preencheria por padrão o 30 e o 60, antes do IF, e apenas deixaria o 75 se ele tivesse uma resolução suportada que batesse com a resolução utilizada no monitor atual.
Exemplo: meu monitor é 1920x1080, mas ele suporta algumas resoluções mais baixas a 75hz, então se eu estiver a 1080, não faz sentido liberar o 75Hz pois meu monitor não está na resolução que ele dá suporte a 75.
Enfim, eu repensaria essa lógica direito, de modo a só incluir o suporte a 75+ se o modo atual estiver usando 75.
Fagner
Fagner
Moderador

Masculino PONTOS : 3409
REPUTAÇÃO : 661
Áreas de atuação : Modelagem 3D, Programação.
Respeito as regras : Dropdown e comparação com String Aad8pUi

Ir para o topo Ir para baixo

DÚVIDA Re: Dropdown e comparação com String

Mensagem por Inequalis Qua Dez 23, 2020 4:23 pm

@Fagner escreveu:Você está percorrendo o for checando se a resolução é maior que 720p, se for e se RefreshRate for null, você joga um valor em RefreshRate e ele deixa de ser nulo.
O problema é que esse array de resoluções tem resoluções duplicadas por conta do refreshRate diferente, mas a de 60 quase sempre é listada primeiro.
Então no RefreshRate recebe 60 e nunca vai entrar no outro IF, pois pra isso ele teria que ser 75, fazendo o dropdown ficar vazio...
Eu preencheria por padrão o 30 e o 60, antes do IF, e apenas deixaria o 75 se ele tivesse uma resolução suportada que batesse com a resolução utilizada no monitor atual.
Exemplo: meu monitor é 1920x1080, mas ele suporta algumas resoluções mais baixas a 75hz, então se eu estiver a 1080, não faz sentido liberar o 75Hz pois meu monitor não está na resolução que ele dá suporte a 75.
Enfim, eu repensaria essa lógica direito, de modo a só incluir o suporte a 75+ se o modo atual estiver usando 75.

Entendo. Se eu fizer um if do tipo:

Código:
if(RefreshRate == "60") {
  // Adiciona as options aqui.
}

Ele deveria preencher o Dropdown? Eu entendi exatamente a sua explicação, mas tenho duvidas a qual valor é atribuído ao RefreshRate.

Inequalis
Iniciante
Iniciante

PONTOS : 628
REPUTAÇÃO : 1
Respeito as regras : Dropdown e comparação com String WvDYdlf

Ir para o topo Ir para baixo

DÚVIDA Re: Dropdown e comparação com String

Mensagem por Fagner Qua Dez 23, 2020 4:30 pm

Sim, fazendo esse IF resolve.
O valor atribuído pode ser qualquer um, na maioria das vezes é o 60, mas as vezes pode ser 75, depende de como o sistema reconhece as resoluções ou como o fabricante listou elas na bios. Resumindo, você não tem como ter 100% de certeza sobre qual vai aparecer primeiro no seu for, o que você pode fazer é ir checando se o próximo refresh rate do For é maior que o atual, ao invés de checar por null, isso se o interesse for pegar a maior taxa de HZ.

Só um complemento:
Suportar 75Hz != Usar 75Hz;
Se seu monitor suporta 75 mas está usando 60, definir no game o Vsync a 75 não vai fazer o monitor exibir 75 frames por segundo, o jogo vai rodar a 75 dropando 15 frames, causando tearing.
Esse tipo de configuração precisa ser feita pelo usuário nas configurações do sistema/monitor.
Fagner
Fagner
Moderador

Masculino PONTOS : 3409
REPUTAÇÃO : 661
Áreas de atuação : Modelagem 3D, Programação.
Respeito as regras : Dropdown e comparação com String Aad8pUi

Ir para o topo Ir para baixo

DÚVIDA Re: Dropdown e comparação com String

Mensagem por Inequalis Qua Dez 23, 2020 4:50 pm

@Fagner escreveu:Sim, fazendo esse IF resolve.
O valor atribuído pode ser qualquer um, na maioria das vezes é o 60, mas as vezes pode ser 75, depende de como o sistema reconhece as resoluções ou como o fabricante listou elas na bios. Resumindo, você não tem como ter 100% de certeza sobre qual vai aparecer primeiro no seu for, o que você pode fazer é ir checando se o próximo refresh rate do For é maior que o atual, ao invés de checar por null, isso se o interesse for pegar a maior taxa de HZ.

Poxa, essa "diferença" do Play para a Build final da Unity, literalmente me matou haha
Fiz um teste prático aqui e procede essa informação que me passou:
Dropdown e comparação com String FPS
Peguei algumas "Resoluções" do List e mostrei na tela o refreshRate delas. Só um adendo: 
Não é fixo, tem umas variações como é possível ver pela img. Vou seguir na correção disso ai.
Valeu ai mesmo pelo auxílio!

Inequalis
Iniciante
Iniciante

PONTOS : 628
REPUTAÇÃO : 1
Respeito as regras : Dropdown e comparação com String WvDYdlf

Ir para o topo Ir para baixo

Ir para o topo


 
Permissões neste fórum
Você não pode responder aos tópicos