Commit 8e6d750824bebae4bf3d587c471d0396abbea5a9
1 parent
48a02ab3
Exists in
master
Problemas de strings nulas resolvidos e anti aliasing implementado
Showing
4 changed files
with
67 additions
and
77 deletions
Show diff stats
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 |