Commit 8e6d750824bebae4bf3d587c471d0396abbea5a9

Authored by Icaro Magalhaes
1 parent 48a02ab3
Exists in master

Problemas de strings nulas resolvidos e anti aliasing implementado

Assets/Scenes/Main.unity
@@ -496,11 +496,11 @@ Prefab: @@ -496,11 +496,11 @@ Prefab:
496 objectReference: {fileID: 0} 496 objectReference: {fileID: 0}
497 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2} 497 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2}
498 propertyPath: m_AnchoredPosition.x 498 propertyPath: m_AnchoredPosition.x
499 - value: 57.2999992 499 + value: 61.9000015
500 objectReference: {fileID: 0} 500 objectReference: {fileID: 0}
501 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2} 501 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2}
502 propertyPath: m_AnchoredPosition.y 502 propertyPath: m_AnchoredPosition.y
503 - value: -137.100006 503 + value: 62.5
504 objectReference: {fileID: 0} 504 objectReference: {fileID: 0}
505 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2} 505 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2}
506 propertyPath: m_AnchorMin.x 506 propertyPath: m_AnchorMin.x
@@ -512,11 +512,11 @@ Prefab: @@ -512,11 +512,11 @@ Prefab:
512 objectReference: {fileID: 0} 512 objectReference: {fileID: 0}
513 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2} 513 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2}
514 propertyPath: m_AnchorMin.y 514 propertyPath: m_AnchorMin.y
515 - value: .5 515 + value: 0
516 objectReference: {fileID: 0} 516 objectReference: {fileID: 0}
517 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2} 517 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2}
518 propertyPath: m_AnchorMax.y 518 propertyPath: m_AnchorMax.y
519 - value: .5 519 + value: 0
520 objectReference: {fileID: 0} 520 objectReference: {fileID: 0}
521 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2} 521 - target: {fileID: 22483792, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2}
522 propertyPath: m_SizeDelta.y 522 propertyPath: m_SizeDelta.y
@@ -546,6 +546,10 @@ Prefab: @@ -546,6 +546,10 @@ Prefab:
546 propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName 546 propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
547 value: start_web_play 547 value: start_web_play
548 objectReference: {fileID: 0} 548 objectReference: {fileID: 0}
  549 + - target: {fileID: 11451458, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2}
  550 + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode
  551 + value: 1
  552 + objectReference: {fileID: 0}
549 m_RemovedComponents: [] 553 m_RemovedComponents: []
550 m_ParentPrefab: {fileID: 100100000, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2} 554 m_ParentPrefab: {fileID: 100100000, guid: a310db7b56d86974ca7dc72c28f6a7f6, type: 2}
551 m_IsPrefabParent: 0 555 m_IsPrefabParent: 0
Assets/Scripts/PlayerManager.cs
@@ -15,6 +15,7 @@ public class PlayerManager : MonoBehaviour { @@ -15,6 +15,7 @@ public class PlayerManager : MonoBehaviour {
15 public static float hSliderValue = 1.1f; 15 public static float hSliderValue = 1.1f;
16 16
17 public static string alphabet = "0123456789,ABCDEFGHIJKLMNOPQRSTUVWXYZ"; 17 public static string alphabet = "0123456789,ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  18 + public string glosa = " _default ";
18 public static String[] stringPos = {"_default"};//vetor que sera usado para quebrar a glosa 19 public static String[] stringPos = {"_default"};//vetor que sera usado para quebrar a glosa
19 20
20 // Guarda os nomes das palavras ja carregadas 21 // Guarda os nomes das palavras ja carregadas
@@ -22,18 +23,11 @@ public class PlayerManager : MonoBehaviour { @@ -22,18 +23,11 @@ public class PlayerManager : MonoBehaviour {
22 // Guarda os nomes das palavras que nao tem assetbundle 23 // Guarda os nomes das palavras que nao tem assetbundle
23 HashSet<string> nonexistentAssetBundles = new HashSet<string>(); 24 HashSet<string> nonexistentAssetBundles = new HashSet<string>();
24 25
25 -  
26 - // Contem todos os nomes das anims na ordem que serao reproduzidas  
27 - public static Queue<string> playList = new Queue<string>();  
28 -  
29 AnimationClip aniClip; 26 AnimationClip aniClip;
30 - public string glosa = " _default ";  
31 -  
32 - 27 +
33 GameObject AVATAR; 28 GameObject AVATAR;
34 Animation COMPONENT_ANIMATION; 29 Animation COMPONENT_ANIMATION;
35 30
36 - //Primeiro metodo que o player executa  
37 void Start( ){ 31 void Start( ){
38 32
39 Application.ExternalCall("onLoadPlayer");//var onLoadPlayer = function(){} 33 Application.ExternalCall("onLoadPlayer");//var onLoadPlayer = function(){}
@@ -44,33 +38,21 @@ public class PlayerManager : MonoBehaviour { @@ -44,33 +38,21 @@ public class PlayerManager : MonoBehaviour {
44 38
45 } 39 }
46 40
47 - void Update(){  
48 - if(COMPONENT_ANIMATION.isPlaying)  
49 - foreach(AnimationState anim in COMPONENT_ANIMATION)  
50 - anim.speed = hSliderValue;  
51 - } 41 + void Update( ){ if(COMPONENT_ANIMATION.isPlaying) foreach(AnimationState anim in COMPONENT_ANIMATION) anim.speed = hSliderValue; }
52 42
53 //define a velocidade das animacoes com base no slider da GUI 43 //define a velocidade das animacoes com base no slider da GUI
54 - public void setSlider( float x ){  
55 - hSliderValue = x;  
56 -  
57 - } 44 + public void setSlider( float x ){ hSliderValue = x; }
58 45
59 //adiciona alfabeto e numerais ao componente animador do avatar 46 //adiciona alfabeto e numerais ao componente animador do avatar
60 void addAlpha( ){ 47 void addAlpha( ){
61 48
62 -  
63 -  
64 - foreach( char letter in alphabet ){  
65 -  
66 - aniClip = Resources.Load<AnimationClip> ("ANIMS/"+letter); 49 + foreach( char letter in alphabet ){ aniClip = Resources.Load<AnimationClip> ("ANIMS/"+letter);
67 50
68 if( aniClip ) COMPONENT_ANIMATION.AddClip(aniClip, ""+letter); 51 if( aniClip ) COMPONENT_ANIMATION.AddClip(aniClip, ""+letter);
69 else Debug.Log("Anim "+letter+" not found"); 52 else Debug.Log("Anim "+letter+" not found");
70 53
71 } 54 }
72 55
73 -  
74 }//addAlpha 56 }//addAlpha
75 57
76 public void stop_animations( ){ 58 public void stop_animations( ){
@@ -81,97 +63,82 @@ public class PlayerManager : MonoBehaviour { @@ -81,97 +63,82 @@ public class PlayerManager : MonoBehaviour {
81 63
82 } 64 }
83 65
84 - public void catchGlosa(){ 66 + public void catchGlosa(String glosa){
85 67
86 - this.glosa = " _default "+glosa+" _default "; 68 + //Debug.Log ("glosa antes do catch: "+glosa);
  69 + this.glosa = glosa;
  70 + //Debug.Log("glosa depois do catch: "+glosa);
  71 + start_web_play();
87 72
88 } 73 }
89 -  
90 -  
91 -  
92 - public void start_inputfield_web_play( ){  
93 - int version = 1;  
94 - StartCoroutine(webPlay(INFIELD.text.ToUpper(), version));  
95 - }  
96 -  
97 - public void start_web_play( ){  
98 -  
99 - catchGlosa();  
100 - int version = 1;  
101 - StartCoroutine(webPlay(INFIELD.text.ToUpper(), version));  
102 - 74 +
  75 + public void start_web_play( ){ int version = 1;
  76 + try{ StartCoroutine(webPlay(glosa, version));
  77 + }catch(Exception e){Debug.Log (e+" :: Ops! Tivemos um problema capiscioso e cabriocrarico...");}
103 } 78 }
104 79
105 IEnumerator webPlay(String glosa, int version) { 80 IEnumerator webPlay(String glosa, int version) {
106 81
107 -  
108 -  
109 stop_animations( ); 82 stop_animations( );
110 83
111 - Subtitles.WORDS.Clear();  
112 - foreach( char letter in alphabet ) Subtitles.WORDS.Add(""+letter);  
113 - 84 + if(Subtitles.WORDS.Count==0) foreach( char letter in alphabet ) Subtitles.WORDS.Add(""+letter);
114 85
115 stringPos = glosa.Split(' '); 86 stringPos = glosa.Split(' ');
116 - String BaseURL = "http://150.165.205.9/anims/WEBGL/";  
117 87
118 - //aniClip = www.assetBundle.mainAsset as AnimationClip; 88 + String BaseURL = "http://150.165.205.9/anims/WEBGL/";
119 89
120 COMPONENT_ANIMATION.CrossFadeQueued("_default", 0.6F, QueueMode.CompleteOthers); 90 COMPONENT_ANIMATION.CrossFadeQueued("_default", 0.6F, QueueMode.CompleteOthers);
121 91
122 foreach(string aniName in stringPos){ 92 foreach(string aniName in stringPos){
123 93
124 - try{  
125 -  
126 - if (String.IsNullOrEmpty(aniName)) continue;  
127 -  
128 - }catch(Exception e){ Debug.Log(e+" :: NotNullNotEmpty"); } 94 + try{ if(String.IsNullOrEmpty(aniName)) continue;
  95 + }catch(Exception e){ Debug.Log(e+" :: NotNullNotEmpty"); }
129 96
130 // Se ja estiver carregado: reproduz animaçao 97 // Se ja estiver carregado: reproduz animaçao
131 - if (loadedAssetBundles.Contains(aniName)){ 98 + if(loadedAssetBundles.Contains(aniName)){
132 99
133 - Subtitles.WORDS.Add(aniName);  
134 COMPONENT_ANIMATION.CrossFadeQueued(aniName, 0.6F, QueueMode.CompleteOthers); 100 COMPONENT_ANIMATION.CrossFadeQueued(aniName, 0.6F, QueueMode.CompleteOthers);
135 101
136 - }else if (nonexistentAssetBundles.Contains(aniName)){//se nao estiver, soletra 102 + }else if(nonexistentAssetBundles.Contains(aniName)){//se nao estiver, soletra
137 foreach (char letter in aniName) 103 foreach (char letter in aniName)
138 COMPONENT_ANIMATION.CrossFadeQueued(""+letter, 0.6F, QueueMode.CompleteOthers); 104 COMPONENT_ANIMATION.CrossFadeQueued(""+letter, 0.6F, QueueMode.CompleteOthers);
139 105
140 }else{ 106 }else{
141 107
  108 + if(String.IsNullOrEmpty(aniName)){ Debug.Log("NULL aniName:"+aniName+" vazio!"); continue; }
  109 +
142 WWW www = WWW.LoadFromCacheOrDownload(BaseURL+aniName, version); 110 WWW www = WWW.LoadFromCacheOrDownload(BaseURL+aniName, version);
143 yield return www; 111 yield return www;
144 112
145 - if (www.error != null){//soletra se o ww inexistir 113 + if(www.error != null){//soletra se o ww inexistir
  114 +
146 //throw new Exception("Erro no WWW: " + www.error); 115 //throw new Exception("Erro no WWW: " + www.error);
147 116
148 Debug.Log("Sinal nao disponivel em banco de sinais. SOLETRANDO "+aniName); 117 Debug.Log("Sinal nao disponivel em banco de sinais. SOLETRANDO "+aniName);
149 118
150 - foreach (char letter in aniName)  
151 - COMPONENT_ANIMATION.CrossFadeQueued(""+letter, 0.6F, QueueMode.CompleteOthers);  
152 - 119 + foreach (char letter in aniName) COMPONENT_ANIMATION.CrossFadeQueued(""+letter, 0.6F, QueueMode.CompleteOthers);
153 nonexistentAssetBundles.Add(aniName); 120 nonexistentAssetBundles.Add(aniName);
154 continue; 121 continue;
155 122
156 - }else{ 123 + }
157 124
158 - //Debug.Log (www.assetBundle.name);  
159 - aniClip = www.assetBundle.mainAsset as AnimationClip; 125 + AssetBundle bundle = www.assetBundle;
160 126
161 - if (aniClip){ 127 + if(String.IsNullOrEmpty(bundle.mainAsset.name)){ Debug.Log(bundle.name+" vazio!"); continue; }
162 128
163 - COMPONENT_ANIMATION.AddClip(aniClip, aniName);  
164 - COMPONENT_ANIMATION.CrossFadeQueued(aniName, 0.6F, QueueMode.CompleteOthers); // 0.4 129 + aniClip = bundle.mainAsset as AnimationClip;
165 130
  131 + bundle.Unload(false);
166 132
167 - Subtitles.WORDS.Add(aniName); loadedAssetBundles.Add(aniName); 133 + if(aniClip){
168 134
169 - }else{  
170 - foreach (char letter in aniName)  
171 - COMPONENT_ANIMATION.CrossFadeQueued("" + letter, 0.6F, QueueMode.CompleteOthers); 135 + COMPONENT_ANIMATION.AddClip(aniClip, aniName);
  136 + COMPONENT_ANIMATION.CrossFadeQueued(aniName, 0.6F, QueueMode.CompleteOthers); // 0.4
172 137
173 - } 138 + Subtitles.WORDS.Add(aniName); loadedAssetBundles.Add(aniName);
174 139
  140 + }else{ Debug.Log ("eita");
  141 + foreach(char letter in aniName) COMPONENT_ANIMATION.CrossFadeQueued(""+letter, 0.6F, QueueMode.CompleteOthers);
175 } 142 }
176 143
177 }//else 144 }//else
@@ -181,5 +148,10 @@ public class PlayerManager : MonoBehaviour { @@ -181,5 +148,10 @@ public class PlayerManager : MonoBehaviour {
181 COMPONENT_ANIMATION.CrossFadeQueued("_default", 0.6F, QueueMode.CompleteOthers); 148 COMPONENT_ANIMATION.CrossFadeQueued("_default", 0.6F, QueueMode.CompleteOthers);
182 149
183 } 150 }
184 -  
185 -}  
186 \ No newline at end of file 151 \ No newline at end of file
  152 +
  153 + public void start_inputfield_web_play( ){ int version = 1;
  154 + try{ StartCoroutine(webPlay(INFIELD.text.ToUpper(), version));
  155 + }catch(Exception e){Debug.Log (e+" :: Exception StartCourr"); }
  156 + }
  157 +
  158 +}
Assets/Scripts/Subtitles.cs
@@ -13,6 +13,7 @@ public class Subtitles : MonoBehaviour { @@ -13,6 +13,7 @@ public class Subtitles : MonoBehaviour {
13 public Text SUBTITLES; 13 public Text SUBTITLES;
14 GameObject AVATAR; 14 GameObject AVATAR;
15 Animation COMPONENT_ANIMATION; 15 Animation COMPONENT_ANIMATION;
  16 + private HashSet<String> numeros;
16 17
17 public static HashSet<String> WORDS = new HashSet<String>(); 18 public static HashSet<String> WORDS = new HashSet<String>();
18 19
@@ -32,6 +33,18 @@ public class Subtitles : MonoBehaviour { @@ -32,6 +33,18 @@ public class Subtitles : MonoBehaviour {
32 33
33 string GetCurrentPlayingAnimationClip( ){ 34 string GetCurrentPlayingAnimationClip( ){
34 35
  36 + foreach(AnimationState aniName in COMPONENT_ANIMATION)
  37 + if( COMPONENT_ANIMATION.IsPlaying(aniName.name) && !aniName.name[0].Equals('_')) return aniName.name.Split(' ')[0];
  38 +
  39 + return null;
  40 +
  41 + }
  42 +
  43 +
  44 +
  45 +
  46 + string _AGetCurrentPlayingAnimationClip( ){
  47 +
35 foreach(String aniName in WORDS) 48 foreach(String aniName in WORDS)
36 if(COMPONENT_ANIMATION.IsPlaying(aniName+" - Queued Clone")) 49 if(COMPONENT_ANIMATION.IsPlaying(aniName+" - Queued Clone"))
37 return aniName; 50 return aniName;
@@ -40,7 +53,8 @@ public class Subtitles : MonoBehaviour { @@ -40,7 +53,8 @@ public class Subtitles : MonoBehaviour {
40 53
41 } 54 }
42 55
43 - /*string GetCurrentPlayingAnimationClip( ){ if(isCaptionActiveFlag) foreach(string anim in words_from_glosa){ if( COMPONENT_ANIMATION.IsPlaying( anim+" - Queued Clone" ) ) //if( !(anim.Equals("_default - Queued Clone") || anim.Equals("_default") ) ) return anim; } return null; }*/ 56 + /*string GetCurrentPlayingAnimationClip( ){
  57 + * if(isCaptionActiveFlag) foreach(string anim in words_from_glosa){ if( COMPONENT_ANIMATION.IsPlaying( anim+" - Queued Clone" ) ) //if( !(anim.Equals("_default - Queued Clone") || anim.Equals("_default") ) ) return anim; } return null; }*/
44 58
45 bool isCaptionActiveFlag = true; 59 bool isCaptionActiveFlag = true;
46 60
ProjectSettings/QualitySettings.asset
@@ -134,7 +134,7 @@ QualitySettings: @@ -134,7 +134,7 @@ QualitySettings:
134 blendWeights: 4 134 blendWeights: 4
135 textureQuality: 0 135 textureQuality: 0
136 anisotropicTextures: 2 136 anisotropicTextures: 2
137 - antiAliasing: 0 137 + antiAliasing: 2
138 softParticles: 0 138 softParticles: 0
139 softVegetation: 1 139 softVegetation: 1
140 realtimeReflectionProbes: 1 140 realtimeReflectionProbes: 1