• Advertisement

Recommended Posts

Hello Everyone,

I write COLLADA Importer and my next goal was to import rigged Characters, so check up the file ,but don't understand one step. I see where the joints and the weigts are, but not where the file say which vertex has which weight. So maybe you guys can help me and explain it?

<vertex_weights> has only the indices of the joints and weights :(

Here's a part of my COLLADA file:

<library_controllers>
    <controller id="pCube1Controller">
      <skin source="#pCube1-lib">
        <bind_shape_matrix>1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000
</bind_shape_matrix>
        <source id="pCube1Controller-Joints">
          <Name_array id="pCube1Controller-Joints-array" count="18">
 Hip LegL FootL ToeL LegR FootR ToeR Belly ShoulderR ArmR HandR FingerR ShoulderL
ArmL HandL FingerL Neck Head</Name_array>
          <technique_common>
            <accessor source="#pCube1Controller-Joints-array" count="18">
              <param type="name"/>
            </accessor>
          </technique_common>
        </source>
        <source id="pCube1Controller-Matrices">
          <float_array id="pCube1Controller-Matrices-array" count="288">

-0.941340 -0.337461 -0.000000 -0.139955 -0.337461 0.941340 -0.000000 0.371721 0.000000 -0.000000 -1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
-0.248803 -0.968554 -0.000000 -0.585359 -0.968554 0.248803 -0.000000 -0.201095 0.000000 0.000000 -1.000000 0.000000 0.000000 0.000000 0.000000 1.000000
-0.034984 -0.999388 -0.000000 -1.221391 -0.999388 0.034984 -0.000000 -0.474481 0.000000 0.000000 -1.000000 0.000000 0.000000 0.000000 0.000000 1.000000
1.000000 -0.000000 0.000000 0.541746 0.000000 1.000000 0.000000 1.913253 -0.000000 -0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
-0.248802 0.968554 0.000000 0.585358 -0.968554 -0.248802 -0.000000 0.201094 -0.000000 -0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000
-0.034983 0.999388 0.000000 1.221387 -0.999388 -0.034983 -0.000000 0.474481 -0.000000 -0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000
1.000000 -0.000001 0.000000 -0.541746 -0.000001 -1.000000 -0.000000 -1.913249 0.000000 0.000000 -1.000000 0.000000 0.000000 0.000000 0.000000 1.000000
0.043672 0.999046 0.000000 -0.000137 -0.999046 0.043672 -0.000000 0.003133 -0.000000 -0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
-0.995861 0.090881 -0.000000 -0.021829 -0.090881 -0.995861 -0.000000 0.184414 -0.000000 -0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
-0.987330 0.158679 -0.000000 0.470613 -0.158679 -0.987330 -0.000000 0.217060 -0.000000 -0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
-1.000000 0.000001 -0.000000 1.419031 -0.000001 -1.000000 -0.000000 -0.008213 -0.000000 -0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
-0.941340 0.337462 -0.000000 1.988030 -0.337462 -0.941340 -0.000000 0.703965 -0.000000 -0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
-0.995861 -0.090881 -0.000000 0.028074 -0.090881 0.995861 0.000000 -0.183843 0.000000 0.000000 -1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
-0.987330 -0.158678 -0.000000 -0.464421 -0.158678 0.987330 0.000000 -0.216064 0.000000 0.000000 -1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
-1.000000 -0.000000 -0.000000 -1.412754 -0.000000 1.000000 0.000000 0.008213 0.000000 0.000000 -1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
-0.941340 -0.337462 -0.000000 -1.982131 -0.337462 0.941340 0.000000 -0.701850 0.000000 0.000000 -1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
0.043673 0.999046 0.000000 -0.483504 -0.999046 0.043673 -0.000000 -0.018032 -0.000000 -0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000
0.043673 0.999046 0.000000 -0.963774 -0.999046 0.043673 -0.000000 -0.039026 -0.000000 -0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000</float_array>
          <technique_common>
            <accessor source="#pCube1Controller-Matrices-array" count="18" stride="16">
              <param type="float4x4"/>
            </accessor>
          </technique_common>
        </source>
        <source id="pCube1Controller-Weights">
          <float_array id="pCube1Controller-Weights-array" count="534">

1.000000 0.446680 0.448446 0.061039 0.006715 0.037120 0.423137 0.341108 0.035586 0.104220 0.095948 0.430593 0.105918 0.018535 0.346667 0.098287
0.446679 0.037120 0.448446 0.061040 0.006715 0.163148 0.388913 0.396025 0.037444 0.014469 0.396151 0.187946 0.014532 0.076902 0.324469 0.394204
0.076828 0.187766 0.328622 0.012580 0.166741 0.388259 0.393852 0.036607 0.014542 0.108793 0.424549 0.424576 0.021527 0.020555 0.255692 0.255431
0.312440 0.153135 0.023302 0.258375 0.311167 0.149047 0.258097 0.023313 0.102002 0.388360 0.388353 0.019283 0.102002 0.174648 0.125476 0.307658
0.306598 0.085620 0.287311 0.159158 0.174218 0.287850 0.091463 0.288312 0.172606 0.159037 0.288857 0.091188 0.177388 0.305490 0.303861 0.126946
0.086316 0.120822 0.069144 0.387268 0.384055 0.038711 0.422697 0.058575 0.073700 0.426612 0.018416 0.426332 0.069409 0.056317 0.430430 0.017513
0.124944 0.385012 0.380074 0.070711 0.039259 0.120822 0.069144 0.387268 0.384055 0.038711 0.422697 0.058575 0.073700 0.426612 0.018416 0.426332
0.069409 0.056317 0.430430 0.017513 0.124944 0.385012 0.380074 0.070711 0.039259 0.174648 0.125476 0.307658 0.306598 0.085620 0.287311 0.159158
0.174218 0.287850 0.091463 0.288312 0.172606 0.159037 0.288857 0.091188 0.177388 0.305490 0.303861 0.126946 0.086316 0.108793 0.424549 0.424576
0.021527 0.020555 0.255692 0.255431 0.312440 0.153135 0.023302 0.258375 0.311167 0.149047 0.258097 0.023313 0.102002 0.388360 0.388353 0.019283
0.102002 0.163148 0.388913 0.396025 0.037444 0.014469 0.396151 0.187946 0.014532 0.076902 0.324469 0.394204 0.076828 0.187766 0.328622 0.012580
0.166741 0.388259 0.393852 0.036607 0.014542 0.446680 0.448446 0.061039 0.006715 0.037120 0.423137 0.341108 0.035586 0.104220 0.095948 0.430593
0.105918 0.018535 0.346667 0.098287 0.446679 0.037120 0.448446 0.061040 0.006715 0.490897 0.501024 0.005129 0.002609 0.780985 0.201682 0.001639
0.008414 0.007279 0.783532 0.008348 0.200106 0.007322 0.490896 0.002609 0.501024 0.005129 0.490897 0.501024 0.005129 0.002609 0.780985 0.201682
0.001639 0.008414 0.007279 0.783532 0.008348 0.200106 0.007322 0.490896 0.002609 0.501024 0.005129 0.072569 0.448896 0.467547 0.008240 0.002747
0.072569 0.448896 0.467547 0.008240 0.002747 0.005633 0.494163 0.494079 0.005633 0.005633 0.494163 0.494079 0.005633 0.069536 0.447783 0.471519
0.008441 0.002721 0.069536 0.447783 0.471519 0.008441 0.002721 0.005428 0.496654 0.496927 0.005428 0.496654 0.496927 0.027277 0.465805 0.466166
0.034322 0.006429 0.032529 0.465155 0.458960 0.027694 0.015662 0.001002 0.524597 0.473182 0.002078 0.496491 0.498270 0.002770 0.015604 0.487493
0.476849 0.013049 0.007005 0.014109 0.482061 0.482639 0.018164 0.003027 0.086141 0.395004 0.392832 0.076562 0.049460 0.072924 0.408978 0.409117
0.086668 0.022313 0.025344 0.009121 0.470943 0.470334 0.024259 0.034082 0.007470 0.455706 0.456255 0.046487 0.007387 0.001314 0.489449 0.491035
0.010816 0.510801 0.489110 0.021297 0.004277 0.471874 0.472667 0.029885 0.010295 0.003391 0.488816 0.487692 0.009806 0.075808 0.021321 0.403240
0.403478 0.096154 0.078335 0.035448 0.405277 0.405075 0.075866 0.101905 0.429125 0.429095 0.016145 0.023730 0.099890 0.407814 0.407384 0.030245
0.054666 0.023975 0.481476 0.479747 0.004706 0.010096 0.023316 0.485651 0.485533 0.002137 0.003363 0.001426 0.503487 0.494347 0.001458 0.499436
0.498840 0.023912 0.481531 0.479799 0.004692 0.010066 0.023254 0.485691 0.485573 0.002130 0.003352 0.023299 0.039289 0.097061 0.420322 0.420031
0.016873 0.022080 0.108912 0.426068 0.426067 0.003085 0.004216 0.033460 0.479621 0.479618 0.002649 0.005089 0.018149 0.487709 0.486404 0.007248
0.495761 0.495752 0.515491 0.484439 0.003078 0.004206 0.033395 0.479662 0.479659 0.002639 0.005071 0.018089 0.487755 0.486447 0.001437 0.495838
0.497206 0.005199 0.001437 0.495838 0.497206 0.005199 0.002118 0.498222 0.493106 0.006148 0.002118 0.498222 0.493106 0.006148 0.001407 0.494389
0.498501 0.005388 0.001407 0.494389 0.498501 0.005388 0.002075 0.495166 0.495968 0.006390 0.002075 0.495166 0.495968 0.006390 0.001348 0.499290
0.499290 0.001654 0.029342 0.484184 0.484184 0.001867 0.499012 0.499012 0.001874 0.030698 0.483368 0.483368 0.001352 0.499287 0.499287 0.001642
0.028780 0.484473 0.484473 0.001859 0.030111 0.483671 0.483671 0.001863 0.499013 0.499013 0.017793 0.003436 0.003494 0.487638 0.487638 0.016776
0.003258 0.003214 0.488376 0.488376 0.016776 0.003258 0.003214 0.488376 0.488376 0.017793 0.003436 0.003494 0.487638 0.487638 0.080146 0.034481
0.036694 0.424340 0.424340 0.079527 0.036205 0.034127 0.425070 0.425070 0.079527 0.036205 0.034127 0.425070 0.425070 0.080146 0.034481 0.036694
0.424340 0.424340 0.106011 0.033886 0.040327 0.409888 0.409888 0.104594 0.039175 0.033170 0.411531 0.411531 0.104594 0.039175 0.033170 0.411531
0.411531 0.106011 0.033886 0.040327 0.409888 0.409888</float_array>
          <technique_common>
            <accessor source="#pCube1Controller-Weights-array" count="534">
              <param type="float"/>
            </accessor>
          </technique_common>
        </source>
        <joints>
          <input semantic="JOINT" source="#pCube1Controller-Joints"/>
          <input semantic="INV_BIND_MATRIX" source="#pCube1Controller-Matrices"/>
        </joints>
        <vertex_weights count="116">
          <input semantic="JOINT" offset="0" source="#pCube1Controller-Joints"/>
          <input semantic="WEIGHT" offset="1" source="#pCube1Controller-Weights"/>
          <vcount>5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 5 4 4 4 5 4 4 5 5 4 4 5 5 3 3 5 5 3 4 5 5 5 5 5 5 5 2 5 5 5 5 5 5 5 5 3 3 5 5 5 5 5 5 3 2 5 5 4 4 4 4 4 4 4 4 3 4 3 4 3 4 4 3 5 5 5 5 5 5 5 5 5 5 5 5</vcount>
          <v>0 1 1 2 2 3 3 4 4 5 0 6 1 7 2 8 4 9 7 10 0 11 1 12 2 13 4 14 7 15 0 16 1 17 4 18 5 19 6 20 7 21 12 22 13 23 14 24 17 25 0 26 1 27 2 28 4 29 7 30 0 31 1 32 4 33 7 34 17 35 7 36 8 37 9 38 10 39 17 40 7 41 12 42 13 43 14 44 17 45 7 46 8 47 12 48 13 49 17 50 7 51 8 52 9 53 12 54 17 55 7 56 8 57 9 58 10 59 12 60 7 61 8 62 12 63 13 64 17 65 7 66 8 67 12 68 16 69 17 70 7 71 8 72 12 73 16 74 17 75 7 76 8 77 9 78 12 79 17 80 7 81 8 82 12 83 13 84 17 85 7 86 8 87 12 88 16 89 17 90 7 91 8 92 12 93 16 94 17 95 7 96 8 97 9 98 12 99 17 100 7 101 8 102 12 103 13 104 17 105 7 106 8 107 12 108 16 109 17 110 7 111 8 112 12 113 16 114 17 115 7 116 8 117 9 118 12 119 17 120 7 121 8 122 12 123 13 124 17 125 7 126 8 127 12 128 16 129 17 130 7 131 8 132 12 133 16 134 17 135 7 136 8 137 9 138 12 139 17 140 7 141 12 142 13 143 14 144 17 145 7 146 8 147 12 148 13 149 17 150 7 151 8 152 9 153 12 154 17 155 7 156 8 157 9 158 10 159 12 160 7 161 12 162 13 163 14 164 17 165 0 166 1 167 2 168 4 169 7 170 0 171 1 172 4 173 7 174 17 175 7 176 8 177 9 178 10 179 17 180 0 181 1 182 2 183 3 184 4 185 0 186 1 187 2 188 4 189 7 190 0 191 1 192 2 193 4 194 7 195 0 196 1 197 4 198 5 199 6 200 0 201 1 202 2 203 4 204 0 205 1 206 2 207 4 208 7 209 0 210 1 211 4 212 7 213 0 214 1 215 4 216 5 217 0 218 1 219 2 220 4 221 0 222 1 223 2 224 4 225 7 226 0 227 1 228 4 229 7 230 0 231 1 232 4 233 5 234 7 235 8 236 9 237 10 238 17 239 7 240 8 241 9 242 10 243 17 244 7 245 8 246 9 247 12 248 7 249 8 250 9 251 12 252 7 253 12 254 13 255 14 256 17 257 7 258 12 259 13 260 14 261 17 262 7 263 12 264 13 265 7 266 12 267 13 268 0 269 1 270 2 271 3 272 4 273 0 274 1 275 2 276 3 277 4 278 0 279 1 280 2 281 0 282 1 283 2 284 3 285 0 286 1 287 2 288 3 289 4 290 0 291 1 292 2 293 3 294 4 295 0 296 1 297 2 298 3 299 4 300 0 301 1 302 2 303 3 304 4 305 0 306 1 307 4 308 5 309 6 310 0 311 1 312 4 313 5 314 6 315 0 316 1 317 4 318 5 319 6 320 4 321 5 322 0 323 1 324 4 325 5 326 6 327 0 328 1 329 4 330 5 331 6 332 0 333 1 334 4 335 5 336 6 337 0 338 1 339 4 340 5 341 6 342 1 343 2 344 3 345 4 346 6 347 1 348 2 349 3 350 4 351 6 352 1 353 2 354 3 355 4 356 6 357 1 358 2 359 3 360 4 361 6 362 1 363 2 364 3 365 1 366 2 367 3 368 1 369 2 370 3 371 4 372 6 373 1 374 2 375 3 376 4 377 6 378 1 379 3 380 4 381 5 382 6 383 0 384 3 385 4 386 5 387 6 388 0 389 3 390 4 391 5 392 6 393 1 394 3 395 4 396 5 397 6 398 4 399 5 400 6 401 5 402 6 403 0 404 3 405 4 406 5 407 6 408 1 409 3 410 4 411 5 412 6 413 8 414 9 415 10 416 11 417 8 418 9 419 10 420 11 421 8 422 9 423 10 424 11 425 8 426 9 427 10 428 11 429 12 430 13 431 14 432 15 433 12 434 13 435 14 436 15 437 12 438 13 439 14 440 15 441 12 442 13 443 14 444 15 445 9 446 10 447 11 448 8 449 9 450 10 451 11 452 9 453 10 454 11 455 8 456 9 457 10 458 11 459 13 460 14 461 15 462 12 463 13 464 14 465 15 466 12 467 13 468 14 469 15 470 13 471 14 472 15 473 7 474 8 475 12 476 16 477 17 478 7 479 8 480 12 481 16 482 17 483 7 484 8 485 12 486 16 487 17 488 7 489 8 490 12 491 16 492 17 493 7 494 8 495 12 496 16 497 17 498 7 499 8 500 12 501 16 502 17 503 7 504 8 505 12 506 16 507 17 508 7 509 8 510 12 511 16 512 17 513 7 514 8 515 12 516 16 517 17 518 7 519 8 520 12 521 16 522 17 523 7 524 8 525 12 526 16 527 17 528 7 529 8 530 12 531 16 532 17 533</v>
        </vertex_weights>
      </skin>
    </controller>
  </library_controllers>

Greets

Benjamin

Edited by B. /

Share this post


Link to post
Share on other sites
Advertisement

AFAIS:

  • The value of vertex_weight/@count is identical to the count of vertices in the skin mesh. It is also the count of numbers in the vertex_weight/vcount array.
  • For each vertex in the mesh, in the order of the vertices, the value at index n in the vertex_weight/vcount array denotes how many influences are working on the vertex with index n. So in your example the vertex  #0 has 5 influences, the vertex #1 has 5 influence, and so on.
  • The numbers in vertex_weight/v array are to be interpreted as pairs. In your example the sequence of pairs is (0,1), (1,2), (2,3), (3,4), (4,5), (0,6), and so on. The first value of each pair denotes the bone (with the exception that a value -1 denotes the bind shape). The second value of each pair denotes the index into the weights array.
  • Beginning with vertex #0, read the first number from vertex_weight/vcount as n, and then read the first n pairs from vertex_weight/v and interpret them being all influences on vertex #0. 
  • Then the next vertex, read the next number from vertex_weight/vcount as n, and then read the next n pairs from vertex_weight/v and interpret them as all influences on that vertex. Continue this for all remaining vertices. 
Edited by haegarr

Share this post


Link to post
Share on other sites

Hello haegarr,

Thank you very much for your explain, you help me a lot :D

Greets

Benjamin

Share this post


Link to post
Share on other sites

Hello haegarr,

i had still problems with the Weights/BonesIndices per vertex.

You wrote that "The value of vertex_weight/@count is identical to the count of vertices in the skin mesh"

But in my case, if i export a Model from Maya 2018 with the house owner Collada Exporter or the Open Collada Exporter Plug-In the vertex weights count is only 12 of my mesh (one side of the mesh), but it has total 60 vertices and i had skin every single vertex on the 3 bones elbow. See image.

So the rest vertices, i dont know the weights/boneindices gets the default value by me of weight 1 0 0 0 and bone index 0 0 0 0 (Matrix Idetity Index). But this solution dosen't work in the end for GPU Skinning, the mesh will not draw right.

So can anyone tell me, where the missing 48 vertex influence details are, or to calculate these?

Greets

Benjamin

 

<vertices id="pCube1-VERTEX">
          <input semantic="POSITION" source="#pCube1-POSITION"/>
        </vertices>
        <triangles count="20" material="lambert1"><input semantic="VERTEX" offset="0" source="#pCube1-VERTEX"/><input semantic="NORMAL" offset="1" source="#pCube1-Normal0"/><input semantic="TEXCOORD" offset="2" set="0" source="#pCube1-UV0"/><p> 3 0 3 2 1 2 0 2 0 3 3 3 0 4 0 1 5 1 3 6 3 5 7 5 2 8 2 2 9 2 5 10 5 4 11 4 7 12 7 6 13 6 4 14 4 7 15 7 4 16 4 5 17 5 1 18 9 0 19 8 6 20 6 1 21 9 6 22 6 7 23 7 11 24 17 9 25 14 10 26 16 9 27 14 8 28 15 10 29 16 2 30 2 6 31 12 0 32 0 6 33 12 2 34 2 4 35 13 7 36 10 8 37 15 1 38 1 9 39 14 1 40 1 8 41 15 5 42 11 10 43 16 7 44 10 8 45 15 7 46 10 10 47 16 11 48 17 5 49 11 3 50 3 5 51 11 11 52 17 10 53 16 1 54 1 9 55 14 3 56 3 11 57 17 3 58 3 9 59 14</p></triangles>
      </mesh>
    </geometry>
  </library_geometries>
  <library_controllers>
    <controller id="pCube1Controller">
      <skin source="#pCube1-lib">
        <bind_shape_matrix>1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 0.000000 1.000000
</bind_shape_matrix>
        <source id="pCube1Controller-Joints">
          <Name_array id="pCube1Controller-Joints-array" count="3">
 joint1 joint2 joint3</Name_array>
          <technique_common>
            <accessor source="#pCube1Controller-Joints-array" count="3">
              <param type="name"/>
            </accessor>
          </technique_common>
        </source>
        <source id="pCube1Controller-Matrices">
          <float_array id="pCube1Controller-Matrices-array" count="48">

0.999999 0.001040 0.000000 0.375687 -0.001040 0.999999 0.000000 -0.000391 0.000000 -0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000
0.999783 -0.000978 0.020814 -1.665093 0.000978 1.000000 0.000021 -0.003751 -0.020814 -0.000001 0.999783 0.034664 0.000000 0.000000 0.000000 1.000000
1.000000 0.000000 -0.000000 -3.833521 -0.000000 1.000000 -0.000000 0.000000 0.000000 0.000000 1.000000 -0.045135 0.000000 0.000000 0.000000 1.000000</float_array>
          <technique_common>
            <accessor source="#pCube1Controller-Matrices-array" count="3" stride="16">
              <param type="float4x4"/>
            </accessor>
          </technique_common>
        </source>
        <source id="pCube1Controller-Weights">
          <float_array id="pCube1Controller-Weights-array" count="33">

1.000000 0.989534 0.009756 0.708022 0.289010 0.002968 0.989518 0.009771 0.708398 0.288669 0.002933 0.989525 0.009771 0.708446 0.288689 0.002866
0.989540 0.009756 0.708070 0.289030 0.002900 0.004697 0.497651 0.497651 0.003326 0.498337 0.498337 0.004704 0.497648 0.497648 0.003331 0.498334
0.498334</float_array>
          <technique_common>
            <accessor source="#pCube1Controller-Weights-array" count="33">
              <param type="float"/>
            </accessor>
          </technique_common>
        </source>
        <joints>
          <input semantic="JOINT" source="#pCube1Controller-Joints"/>
          <input semantic="INV_BIND_MATRIX" source="#pCube1Controller-Matrices"/>
        </joints>
        <vertex_weights count="12">
          <input semantic="JOINT" offset="0" source="#pCube1Controller-Joints"/>
          <input semantic="WEIGHT" offset="1" source="#pCube1Controller-Weights"/>
          <vcount>2 3 2 3 2 3 2 3 3 3 3 3</vcount>
          <v>0 1 1 2 0 3 1 4 2 5 0 6 1 7 0 8 1 9 2 10 0 11 1 12 0 13 1 14 2 15 0 16 1 17 0 18 1 19 2 20 0 21 1 22 2 23 0 24 1 25 2 26 0 27 1 28 2 29 0 30 1 31 2 32</v>
        </vertex_weights>
      </skin>
    </controller>
  </library_controllers>

 

 

03.jpg

Edited by B. /

Share this post


Link to post
Share on other sites

Found the solution, the 12 vertices is linked on the 12 vertices pos array in the geometry_lib :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Advertisement
  • Advertisement
  • Popular Tags

  • Advertisement
  • Popular Now

  • Similar Content

    • By Timothy Sharp
      just to test out my animations, let's say i had a trip animation. How would I code a script to where my character would fall it mud and their clothes would become all muddy? I saw this in a game on Unreal 3 but is this possible with Unity?
    • By Manuel Berger
      Hello fellow devs!
      Once again I started working on an 2D adventure game and right now I'm doing the character-movement/animation. I'm not a big math guy and I was happy about my solution, but soon I realized that it's flawed.
      My player has 5 walking-animations, mirrored for the left side: up, upright, right, downright, down. With the atan2 function I get the angle between player and destination. To get an index from 0 to 4, I divide PI by 5 and see how many times it goes into the player-destination angle.

      In Pseudo-Code:
      angle = atan2(destination.x - player.x, destination.y - player.y) //swapped y and x to get mirrored angle around the y axis
      index = (int) (angle / (PI / 5));
      PlayAnimation(index); //0 = up, 1 = up_right, 2 = right, 3 = down_right, 4 = down

      Besides the fact that when angle is equal to PI it produces an index of 5, this works like a charm. Or at least I thought so at first. When I tested it, I realized that the up and down animation is playing more often than the others, which is pretty logical, since they have double the angle.

      What I'm trying to achieve is something like this, but with equal angles, so that up and down has the same range as all other directions.

      I can't get my head around it. Any suggestions? Is the whole approach doomed?

      Thank you in advance for any input!
       
    • By Alexander Nazarov
      Hello. I'm newby in Unity and just start learning basics of this engine. I want to create a game like StackJump (links are below). And now I wondering what features do I have to use to create such my game. Should I use Physics engine or I can move objects changing transform manually in Update().
      If I should use Physics can you in several words direct me how can I implement and what I have to use. Just general info, no need for detailed description of developing process.
      Game in PlayMarket
      Video of the game
    • By Dave Haylett
      Hi all. My project is coming along wonderfully, and am starting to consider alpha deployment, and would like your advice.
      My project need access to 10,000 small PNG image files at runtime, each is only a few kilobytes each, which during development I used to load in directly from a fixed path on my HDD whenever one was needed (obviously not a solution for go-live), using something like this:
      img = new WriteableBitmap(new BitmapImage(new Uri(@screenshotsPath + filename)));
      The image would then be blitted onto a buffer screen, etc. etc. At a time, a few dozen would be being used.
      Now I'm thinking about deployment, and also when I produce an update to my app, there could be more images to add to the folders. So I'm considering the best way of a) deploying the images to the user as part of the project, and b) how to most easily handle updates to the app, whereby more images will be added.
      I have just experimented with adding them all as a Resource (!). This inflated the exe from 10mb to 100mb (not a major problem), increased the compile time from 3 secs to 30 secs (annoying), increased RAM usage from 500mb to 1.5gb (not a major problem either), but means that it solves my fixed directory issue, distribution issue, and update issue, simply by having the files all stuck into the executable. Here's the new code I'm using:
      img = BitmapFactory.FromResource("Shots/" + filename);
      The next thing I was going to try was to mark them as Content > Copy if Newer. This would resolve the executable size and RAM usage (and also the directory issue as well), however it seems that I'd need to highlight them all, and move them from Resource to Content. As an up-front job this isn't too bad, but as I add new images to the project, I'll need to go in and do this every time, which gets annoying, as the VS2015 default is Resource. Also, I'm not sure how this would work in terms of updates. Would something like ClickOnce deployment recognise new PNGs and install them to the users?
       
      I also have 3,000 ZIP files (~500kb each) which also need deploying and updating in the same way. These are currently read directly from my HDD until I can find a permanent solution for adding these to the project as well.
      Can anyone thing of a better way of doing what I'm trying to achieve?
      Thanks for any help folks.
       
    • By Felis Nigripes
      I'm doing a test quest.
      The player gets a quest from an NPC to bring him fish.

      Once the player picks up the fish, the original NPC gets replaced by a new one with a new conversation trigger. The NPC tells the Player "Well done" and should give 200xp.

      The script tells the xp counter to go up by making a reference to the gameobject that holds the text component
       
      But it throws this error:
       

       
      I'm aware that the error may hide in plain sight. I just have to sort this out, since I'm writing the AI at the same time, and the time it takes to resolve everyone of these errors is tremendous.
      Plus, I think I'll learn something. I've been having trouble with some basic functionalities recently. There might be something wrong with my understanding on how programming works.
       
      Glad if someone could help (:
       
       
       
      Edit: I'm fully aware that the update function requires an input. I call the function in the editor when the dialogue ends, it still doesn't work.
       
  • Advertisement