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:
o q vcs acham??
sombras para jogos mobile
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
[Duvida] Bug ao usar Vector3.Lerp Objeto é teleportado na lata
Download grátis de ônibus brasileiros - Millennium II Piso Baixo Central
Unity - Deslizar Para Rotacionar o 'Personagem'
Erro ao compilar para IOS
[Devlog] Lost in the world 14/11
Jogo 2D unity - trocar sprite ao apertar botão
Discord para desenvolvimento de jogos
Bug/Erro da unity?
[TUTORIAL] Controle 3ª pessoa com animações mecânicas (root motion)
rotação no exio z
[TUTORIAL] Banco de dados || MySQL
(UNITY) Erro ao compilar a Build Android
Unity + MySQL
Erro de Prefab quando realiza o Build de um projeto 3D
Em busca de um modelador 3D para plataforma educacional (Já ganhamos apoio de faculdades)
[TUTORIAL] Unity 5 - Sistema Completo de PORTAS E CHAVES
Drop Shadows
[RESOLVIDO]Como aplicar textura trânsparente na unity
Unity 3D - Desenhos Com Física(Download Projeto)
Como mudar o CONTROLLER do ANIMATOR
Como criar um poligono dinamicamente?
erro no unity
movimento de uma nave
Instantiate
Problema ao rotacionar valores negativos.
Calcular hora ?
Novo estilo de estourar blocos, baixe meu jogo pessoal ... conto com a ajuda de vocês!!!
Jogo que fiz para uma Jam da minha faculdade FATEC Ourinhos.
Não consigo o Android SDK!!
[RESOLVIDO] Como faço para depois de determinado tempo acontecer algo?
CRASH AO ENTRAR NA CENA UNITY
estou procurando um bom tutorial de IA Basica
Erro ao colocar script no botão
Novo jogo em desenvolvimento, 13º andar
Text Dinâmico no botão
Sistema Pdv, Mercado, Padaria, Conveniência, Lojas Em Geral - C# VISUAL STUDIO
[TUTORIAL] - Script de lanterna pra seu jogo de terror e outros...
[RESOLVIDO] Unity - Reproduzir Videos Do Blender No Unity
Ordem de fases
[RESOLVIDO] Tenho algum erro de simbolo no script do carro o que poderia ser?
[RESOLVIDO] Dúvida. Detectar colisões nas instâncias
erro na minha IA
[TUTORIAL] While, como funciona?
Mostrar a contagem em 10K e 100M
[TUTORIAL] AI Enemy 2.0 + animações ( Jogos de terror )
Cores nos materiais sem criar material
Poderia modelar um personagem cartoon para meu projeto
Como coloco modo de criação de personagem?
[Ajuda] Assets
RayCasting + Disparo Um Bom Tipo De Video Aula.
Ajuda de Blender para Unity
Procuro Equipe Para Criação de Jogo [PAGO]
[RESOLVIDO] erro WaterBaseEditor.cs não encontra o caminho do WaterBase
[TUTORIAL] Criar Analógico Virtual UI Para Mobile.
[TUTORIAL] Acessar nomes de arquivos diretamente da pasta
Objeto dentro do player nao ta rotacioando
[TUTORIAL] MENU PRINCIPAL - UNITY 5 (5.3 ou superior) (Com UI)
Array de prefabs
screenshot
instancia item aleatorio em varias posicoes
[TUTORIAL] Mira que fica se movendo (ocilando,tremendo,etc)
Getcomponent de C# para java
Curso barato de C#
Unity - Modelo 3D em Menu 2D
[RESOLVIDO] Camera Estilo Showroom
A um mês com unity bugado sem resposta
[GameJam] Competição organizada pela BitCodeStudios
Pegar strings de "duas em duas"
criar um piano no unity
Movimentação
Instanciar objeto onde cricar com mouse ou touch
Dúvida Sistema de Energia para jogo android
[RESOLVIDO] Inimigo patrulhando constantemente estilo mario
BUG UNITY 3D ROSA A SCENE E GAME
Dúvida. Colliders no Unity3D
Pq a grama do Unity é tao pesada?
Alguem cria uma conta na playstore pra mim? :(
Capture Panorama?
Artistas 3D e Programadores Unity3D (Remunerado)
Input Get Key
SCHULTZ Jogo de terror
(Erro) IndexOutOfRangeException:Array index is out of range
EU QUERIA COLOCAR ANUNCIOS NO MEU JOGO NA MUDANÇA DE CENAS MAS NÃO ACHO UM JEITO
Unity - Duvida Sobre a JDK Que Vocês Usam
[RESOLVIDO] Adicionar Botoes em controle mobile
admob recompensa
Unity - Duvida Sobre Atualizar
Unity Admob GDPR (como implementar ?)
Timer para mudar de câmera
The Pyramid Demo Atualizado
[____ENQUETE____] Eleições para presidente 2018 (2º turno)
Mudando cor do texto...
como dminuir o lag no meu unity 5
[JOGO MOBILE] Defeat the Illuminatis
Como chamar animação sem passar por outro parâmetros?
[TUTORIAL] Unity 5 - Botão contínuo usando UI (Manter pressionado)
Hoje à(s) 1:26 am
Ontem à(s) 11:22 pm
Ontem à(s) 7:23 pm
Ontem à(s) 6:20 pm
Ontem à(s) 3:50 pm
Ontem à(s) 12:09 pm
Ontem à(s) 11:28 am
Ontem à(s) 11:23 am
Ontem à(s) 5:23 am
Qui Nov 15, 2018 4:59 pm
Qui Nov 15, 2018 4:47 pm
Qui Nov 15, 2018 3:23 pm
Qui Nov 15, 2018 2:13 pm
Qua Nov 14, 2018 5:47 pm
Qua Nov 14, 2018 5:44 pm
Qua Nov 14, 2018 5:41 pm
Qua Nov 14, 2018 5:14 pm
Qua Nov 14, 2018 4:30 pm
Qua Nov 14, 2018 3:35 pm
Qua Nov 14, 2018 2:45 pm
Qua Nov 14, 2018 1:25 pm
Qua Nov 14, 2018 10:45 am
Ter Nov 13, 2018 11:25 pm
Ter Nov 13, 2018 11:23 pm
Ter Nov 13, 2018 11:18 pm
Ter Nov 13, 2018 10:55 pm
Ter Nov 13, 2018 6:21 pm
Ter Nov 13, 2018 5:55 pm
Ter Nov 13, 2018 1:30 pm
Ter Nov 13, 2018 11:33 am
Seg Nov 12, 2018 9:52 pm
Seg Nov 12, 2018 3:57 pm
Seg Nov 12, 2018 3:24 pm
Seg Nov 12, 2018 8:13 am
Seg Nov 12, 2018 8:11 am
Dom Nov 11, 2018 6:56 pm
Dom Nov 11, 2018 2:41 pm
Dom Nov 11, 2018 8:12 am
Dom Nov 11, 2018 7:57 am
Sab Nov 10, 2018 8:54 pm
Sab Nov 10, 2018 5:11 pm
Sab Nov 10, 2018 2:52 pm
Sab Nov 10, 2018 2:13 pm
Sab Nov 10, 2018 12:39 am
Sab Nov 10, 2018 12:28 am
Sex Nov 09, 2018 3:56 pm
Qui Nov 08, 2018 11:28 pm
Qui Nov 08, 2018 11:25 pm
Qui Nov 08, 2018 10:01 pm
Qui Nov 08, 2018 7:47 pm
Qui Nov 08, 2018 12:36 pm
Qui Nov 08, 2018 12:31 pm
Qui Nov 08, 2018 12:28 pm
Qui Nov 08, 2018 12:53 am
Qua Nov 07, 2018 5:52 pm
Qua Nov 07, 2018 12:49 pm
Ter Nov 06, 2018 2:05 pm
Ter Nov 06, 2018 12:30 pm
Ter Nov 06, 2018 11:32 am
Ter Nov 06, 2018 1:10 am
Seg Nov 05, 2018 6:57 pm
Seg Nov 05, 2018 3:36 pm
Seg Nov 05, 2018 12:44 am
Dom Nov 04, 2018 5:32 pm
Dom Nov 04, 2018 5:31 pm
Dom Nov 04, 2018 5:30 pm
Dom Nov 04, 2018 1:05 am
Sab Nov 03, 2018 1:36 pm
Sex Nov 02, 2018 11:38 pm
Sex Nov 02, 2018 10:55 pm
Sex Nov 02, 2018 8:16 pm
Sex Nov 02, 2018 7:50 pm
Sex Nov 02, 2018 7:41 pm
Sex Nov 02, 2018 7:27 pm
Sex Nov 02, 2018 6:36 pm
Sex Nov 02, 2018 3:27 pm
Sex Nov 02, 2018 3:35 am
Sex Nov 02, 2018 3:24 am
Qui Nov 01, 2018 3:56 pm
Qui Nov 01, 2018 3:52 pm
Qui Nov 01, 2018 1:18 pm
Qui Nov 01, 2018 7:57 am
Qui Nov 01, 2018 2:26 am
Qui Nov 01, 2018 2:05 am
Qua Out 31, 2018 9:20 pm
Qua Out 31, 2018 6:09 pm
Qua Out 31, 2018 7:17 am
Ter Out 30, 2018 11:34 pm
Ter Out 30, 2018 9:34 pm
Ter Out 30, 2018 5:29 pm
Ter Out 30, 2018 8:12 am
Ter Out 30, 2018 8:05 am
Seg Out 29, 2018 2:21 pm
Seg Out 29, 2018 12:03 am
Dom Out 28, 2018 5:33 pm
Dom Out 28, 2018 11:58 am
Dom Out 28, 2018 11:57 am
Sab Out 27, 2018 11:29 am
Sab Out 27, 2018 11:22 am
Socates
CaioItz
rafaelllsd
NKKF
SuperGamer
Magnatah
eduardonog30
Mateus2583
Regis garcia
JohnRambo
Zack2
francieljesus
theus.mors
sabbath
sabbath
sabbath
McbDJ
rZwr
Fabricio Alves
NKKF
TioUV
JohnRambo
MarcosSchultz
MarcosSchultz
MarceloYBP
theus.mors
juniorhotes
Weslley
Callyde Jr
hamerom
luansantos
francisco barroso
Vitor Paulino
dstaroski
dstaroski
SuperGamer
Patrick
dstaroski
dstaroski
SuperGamer
Magnatah
francisco barroso
Samuelostgamer
GattiMene
MarceloYBP
SuperGamer
Tegh
francisco barroso
NKKF
GameLACK
dstaroski
dstaroski
dstaroski
jack2117
Mathss
Daniel Dória
JohnRambo
gurgelg752
francisco barroso
MarcosSchultz
Nalfam
dstaroski
MarcosSchultz
dstaroski
dstaroski
dstaroski
Magnatah
Teio
Callyde Jr
hetrodo
NKKF
CarlosDT94
MarcosSchultz
MarcosSchultz
Magnatah
MrMattD
MarcosSchultz
MarcosSchultz
francisco barroso
francisco barroso
Callyde Jr
Dom3000
MarcosSchultz
MarcosSchultz
francisco barroso
MATHEUS1233
dstaroski
francisco barroso
theus.mors
Magnatah
dstaroski
dstaroski
dstaroski
MarcosSchultz
mafipt
dstaroski
dstaroski
Weslley
Weslley

[TUTORIAL] Script para informar layers não utilizadas

Ir em baixo

TUTORIAL [TUTORIAL] Script para informar layers não utilizadas

Mensagem por dipode em Qui Jun 15, 2017 3:51 pm

Postei recentemente um script para verificar tags não utilizadas aqui no fórum, o link:

http://www.schultzgames.com/t4916-script-para-informar-tags-nao-utilizadas#34386

Agora fiz esse para verificar layers não utilizadas; link do GitHub:

https://github.com/PerduGames/LayersOff

O que ele faz?
Verifica as layers não utilizadas, você pode optar por procurar layers não utilizadas na cena(Apenas objetos ativos) ou no projeto(prefabs).

Opções?
-Pesquisar somente na cena ou no projeto.
-Criar ou não um arquivo .txt com as layers.
-Mostrar ou não as layers padrões da Unity.

Como utilizar?
É só jogar em algum objeto qualquer e dar play, só não se esqueça de desabilitar ou retirar o script do objeto depois da verificação, pois dependendo de quantos objetos você tiver em cena ou no projeto pode atrapalhar.

Código:
using UnityEngine;
using UnityEditor;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.IO;

public class LayersOff : MonoBehaviour {

 //////////////////////////////////////
 //Script by PerguGames
 //GitHub:https://github.com/PerduGames
 //////////////////////////////////////

 /*
 Script para encontrar as layers não utilizadas na cena
 ou em todo projeto, recebendo seus nomes no Console ou
 criando arquivo .txt com as layers não utilizadas.

 Notes:
 - Para atualizar o arquivo .txt criado na Unity, minimize a Unity ou de um Refresh que atualiza.
 - Ouvi dizer que este por ser um recurso interno pode quebrar em futuras versões:
 "UnityEditorInternal.InternalEditorUtility.layers"
 -No modo pesquisa para pesquisar somente na cena(true), apenas pesquisa objetos ativos, caso esteja
 usando uma versão antiga da Unity, apenas mude onde houver "FindObjectsOfType" para "FindObjectsOfTypeAll",
 assim também pesquisará em objetos inativos na cena.
 */

 //Bool para pesquisar dentro da cena ou do projeto inteiro
 [Header("Modo Pesquisa?")]
 [Tooltip("True = Pesquisar somente na cena. \nFalse = Pesquisar em todo projeto.")]
 [SerializeField]
 private bool ModoPesquisa;

 //Bool para gerar arquivo txt ou não
 [Header("Gerar arquivo .txt?")]
 [Tooltip("True = Gerar arquivo .txt. \nFalse = Não gerar arquivo .txt.")]
 [SerializeField]
 private bool GerarArquivo;

 //Bool para evitar layers padrão da unity
 [Header("Evitar Layers padrões da Unity?")]
 [Tooltip("True = Evitar Layers padrões da Unity. \nFalse = Não evitar Layers padrões da Unity.")]
 [SerializeField]
 private bool EvitarLayersUnity;

 //Lista para guardar layers não utilizadas
 private List<string> listaLayers = new List<string>();
 //Criar array de layers padrão da Unity
 string[] layersUnity = {"Default", "TransparentFX", "Ignore Raycast", "Water", "UI", ""};

 // Use this for initialization
 void Awake () {
 //Pesquisar somente na cena
 if (ModoPesquisa == true) {
 //Colocar as layers na lista
 listaLayers = UnityEditorInternal.InternalEditorUtility.layers.ToList ();

 for (int i = 0; i < UnityEditorInternal.InternalEditorUtility.layers.Length; i++) {
 int num = 0;
 //Verificar se a layer está sendo utilizada por algum objeto
 Object[] objs = GameObject.FindObjectsOfType (typeof(GameObject));
 for (int j = 0; j < objs.Length; j++) {
 GameObject o = (GameObject)objs[j];
 if(o.layer == LayerMask.NameToLayer(UnityEditorInternal.InternalEditorUtility.layers [i])){
 num += 1;
 }
 //Pesquisar nos objetos filhos caso haja
 if (o.transform.childCount > 0) {
 for (int k = 0; k < o.transform.childCount; k++) {
 if (o.transform.GetChild (k).gameObject.layer == LayerMask.NameToLayer(UnityEditorInternal.InternalEditorUtility.layers [i])) {
 num += 1;
 }
 }
 }
 }
 //Se a layers estiver sendo utilizada, remove ela da lista
 if(num != 0){
 listaLayers.Remove (UnityEditorInternal.InternalEditorUtility.layers [i]);
 }
 }
 //Evitar as layers e gerar arquivo
 gerar ();
 //Pesquisar em todo projeto
 }else if(ModoPesquisa == false){
 //Criar lista de GameObject para os prefabs
 List<GameObject> listaPrefabs = new List<GameObject>();
 //Pegar FileInfo de todos prefabs do projeto
 DirectoryInfo dir = new DirectoryInfo ("Assets/");
 FileInfo[] arquivo = dir.GetFiles ("*.prefab", System.IO.SearchOption.AllDirectories);
 //Pegar todos os GameObjects
 foreach(FileInfo i in arquivo){
 string pathCompleto = i.FullName.Replace(@"\","/");
 string pathUnity = "Assets" + pathCompleto.Replace(Application.dataPath, "");
 GameObject gobj = AssetDatabase.LoadAssetAtPath (pathUnity, typeof(GameObject)) as GameObject;
 listaPrefabs.Add (gobj);
 }

 //Colocar as layers na lista
 listaLayers = UnityEditorInternal.InternalEditorUtility.layers.ToList ();

 //Pecorrer a lista das layers
 for (int i = 0; i < UnityEditorInternal.InternalEditorUtility.layers.Length; i++) {
 int num = 0;
 //Pecorrer a lista dos objetos
 for (int j = 0; j < listaPrefabs.Count; j++) {
 //Pesquisar no objeto pai
 if (listaPrefabs [j].layer == LayerMask.NameToLayer(UnityEditorInternal.InternalEditorUtility.layers [i])) {
 num += 1;
 }
 //Pesquisar nos objetos filhos caso haja
 if (listaPrefabs [j].transform.childCount > 0) {
 for (int k = 0; k < listaPrefabs [j].transform.childCount; k++) {
 if(listaPrefabs [j].transform.GetChild(k).gameObject.layer == LayerMask.NameToLayer(UnityEditorInternal.InternalEditorUtility.layers [i])){
 num += 1;
 }
 }
 }
 }
 //Se a layers estiver sendo utilizada, remove ela da lista
 if(num != 0){
 listaLayers.Remove (UnityEditorInternal.InternalEditorUtility.layers [i]);
 }
 }
 //Evitar as layers e gerar arquivo
 gerar ();
 }
 }

 //Metodo para evitar as layers e gerar arquivo caso seja true
 void gerar (){
 //Para evitar layers padrão da Unity
 if(EvitarLayersUnity == true){
 for(int i = 0; i < layersUnity.Length; i++) {
 listaLayers.Remove (layersUnity [i]);
 }
 }
 //String para escrever no arquivo .txt
 string stg = "";
 //Mostrar as layers não utilizadas no Console
 for (int i = 0; i < listaLayers.Count; i++) {
 Debug.Log (listaLayers [i]);
 //Se GerarArquivo for true
 if(GerarArquivo == true){
 stg += listaLayers [i] + System.Environment.NewLine;
 }
 }
 //Se GerarArquivo for true
 if (GerarArquivo == true) {
 StreamWriter writer = new StreamWriter("Assets/LayersOff.txt");
 writer.WriteLine (stg);
 writer.Close();
 }
 }
}
avatar
dipode
Avançado
Avançado

PONTOS : 1410
REPUTAÇÃO : 39
Respeito as regras :

Ver perfil do usuário https://github.com/perdugames

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum