Некорректное отображение спрайта с TE_SPRITETRAIL

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
3,593
Реакции
1,576
Помог
141 раз(а)
[HIDE]Довольно давно столкнулся с некой проблемой отображения некоторых спрайтов через TE_SPRITETRAIL. Некоторые (не все) спрайты при достижении какого-то определённого расстояния от игрока как будто "ломаются" - перестают корректно отображаться, будто кто-то собрал неправильно пазл. Вот как это выглядит:



Притом, эта проблема наблюдается только на стим клиенте (включая GSClient), а на нон-стиме всё нормально. (второе окно на видео)

Использую данный сток из MsgStocks:
Код:
/**
* Creates a line of moving glow sprites or models with gravity, fadeout,
* and collisions.
*
* @note Video preview of this and all other te_ stocks can be found here:
*       https://youtu.be/szW-bSMPuyQ?t=2m58s
*
* @param startpos      Starting position of the effect
* @param endpos        Ending position of the effect
* @param sprite        Sprite index
* @param count         Number of models/sprites to generate
* @param life          The length of time the effect shall remain
* @param scale         Scale of the effect
* @param velocity      Velocity along vector
* @param randomness    Randomness of the velocity
* @param receiver      Client index that will be able to see the effect
*                      or 0 for all clients
* @param reliable      If true, the message will be sent via the reliable
*                      channel, otherwise it will use the unreliable one
*
* @return              0 if "receiver" is non-zero and the client isn't connected,
*                      1 otherwise
*/
stock te_create_model_trail(startpos[3], endpos[3], sprite, count = 1, life = 10, scale = 10, velocity = 10, randomness = 10, receiver = 0, bool:reliable = true)
{
    if(receiver && !is_user_connected(receiver))
        return 0;

    message_begin(get_msg_destination(receiver, reliable), SVC_TEMPENTITY, .player = receiver);
    write_byte(TE_SPRITETRAIL);
    write_coord(startpos[0]);
    write_coord(startpos[1]);
    write_coord(startpos[2]);
    write_coord(endpos[0]);
    write_coord(endpos[1]);
    write_coord(endpos[2]);
    write_short(sprite);
    write_byte(count);
    write_byte(life);
    write_byte(scale);
    write_byte(velocity);
    write_byte(randomness);
    message_end();

    return 1;
}
Сам спрайт так же прилагаю.[/HIDE]
 

Вложения

Сообщения
855
Реакции
532
Помог
13 раз(а)
как говорится проблема не в тебе, а во мне (в спрайте)
такая же история была (и есть) у меня

+на гитхабе вольво тему поднимал SISA
там, насколько я помню чет писали, но править никто не спешит ( неожиданно, да? вот так вот )

нашел тред
https://github.com/ValveSoftware/halflife/issues/2470
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу