Pular para o conteúdo
Ver no aplicativo

Uma forma melhor de navegar. Saiba mais.

GN Emulator

Um aplicativo em tela cheia na sua tela inicial com notificações push, distintivos e mais.

Para instalar este aplicativo no iOS e iPadOS
  1. Toque no ícone Compartilhar no Safari
  2. Role o menu e toque em Adicionar à Tela de Início.
  3. Toque em Adicionar no canto superior direito.
Para instalar este aplicativo no Android
  1. Toque no menu de 3 pontos (⋮) no canto superior direito do navegador.
  2. Toque em Adicionar à tela inicial ou Instalar aplicativo.
  3. Confirme tocando em Instalar.

girar item 3D na UI custom em Lua (igual ao inventário)

Respostas Destacadas

  • Licença Plus

Sugestões de recurso para a UI em Lua. No caso o recurso JÁ existe no cliente, só não está exposto para o Lua.

1) GIRAR ITEM 3D EM JANELA CUSTOM (COLEÇÕES)

Na minha janela de Coleções (feita em Lua, ClientHooks.RegisterRenderTop) os itens 3D ficam parados. Eu os desenho com Client.RenderMarketplaceItem e Client.RenderItemScaled, mas essas funções desenham o item num ângulo fixo — RenderItem / RenderItemScaled / RenderMarketplaceItem não têm parâmetro de ângulo.

No INVENTÁRIO a mesma peça gira sozinha, sem personagem atrás (print em anexo). Ou seja, o cliente já sabe renderizar um item sozinho e girando — só não dá para fazer isso numa janela feita em Lua. Para personagem vocês já expõem esse caminho persistente (ClientRenderStoredCharacter / ClientHasStoredCharacter / ClientClearStoredCharacter); para item não existe equivalente.

Qualquer uma destas opções resolve:

- (Preferida) Um "StoredItem" para o Lua, igual ao StoredCharacter: criar o item uma vez, o motor mantém e gira sozinho, e eu só recrio quando a coleção muda.

- Um parâmetro de ângulo em RenderItem / RenderItemScaled / RenderMarketplaceItem, que eu animo a cada quadro.

Resolvido por José Silva

  • Solução
16 horas atrás, bcavalini disse:

Sugestões de recurso para a UI em Lua. No caso o recurso JÁ existe no cliente, só não está exposto para o Lua.

1) GIRAR ITEM 3D EM JANELA CUSTOM (COLEÇÕES)

Na minha janela de Coleções (feita em Lua, ClientHooks.RegisterRenderTop) os itens 3D ficam parados. Eu os desenho com Client.RenderMarketplaceItem e Client.RenderItemScaled, mas essas funções desenham o item num ângulo fixo — RenderItem / RenderItemScaled / RenderMarketplaceItem não têm parâmetro de ângulo.

No INVENTÁRIO a mesma peça gira sozinha, sem personagem atrás (print em anexo). Ou seja, o cliente já sabe renderizar um item sozinho e girando — só não dá para fazer isso numa janela feita em Lua. Para personagem vocês já expõem esse caminho persistente (ClientRenderStoredCharacter / ClientHasStoredCharacter / ClientClearStoredCharacter); para item não existe equivalente.

Qualquer uma destas opções resolve:

- (Preferida) Um "StoredItem" para o Lua, igual ao StoredCharacter: criar o item uma vez, o motor mantém e gira sozinho, e eu só recrio quando a coleção muda.

- Um parâmetro de ângulo em RenderItem / RenderItemScaled / RenderMarketplaceItem, que eu animo a cada quadro.

image.png

Implementamos esse recurso na 4.0.0 com um parâmetro opcional de rotação em Client.RenderItem, Client.RenderItemScaled, Client.RenderItemCentered e Client.RenderMarketplaceItem.

Na sua janela de Coleções, pode continuar usando ClientHooks.RegisterRenderTop e desenhar assim:

-- Defina uma vez, fora do callback:
local rotacao = {
    autoRotate = true,
    rotationSpeed = 30
}

-- Dentro do callback de renderização:
Client.RenderMarketplaceItem(
    x, y, largura, altura,
    itemIndex, level, excellent, ancient,
    rotacao
)

O Main calcula o giro automaticamente, em graus por segundo, sem depender do FPS ou da quantidade de itens desenhados. Valores negativos invertem o sentido.

Se preferir controlar o ângulo pelo Lua, use:

{ angle = 45 }

A rotação preserva a orientação e a calibração do item, e o mouse não sobrescreve o ângulo informado. As chamadas existentes, sem esse argumento, continuam funcionando como antes.

Optamos por ampliar as funções existentes porque o motor já reutiliza os modelos dos itens. Para esse caso, não é necessário criar e gerenciar um StoredItem: ao mudar a coleção, basta passar os dados do novo item.

O recurso já foi testado e validado na 4.0.0. A documentação Lua foi atualizada, e o pacote inclui o exemplo Data\Custom\Lua\Examples\ItemRotation.lua.

Agradeço imenso por sua colaboraçao meu caro, qualquer coisa estamos a disposição.

Rivify Brasil Ltda

Holding de tecnologia, Software, Cloud, IA
e infraestrutura digital.

[email protected]  •  www.rivify.com.br

Av. Tiradentes, 960, 9.º andar, sala 2 — Luz
São Paulo/SP — CEP 01102-000
CNPJ 68.145.965/0001-06

Nos acompanhem nas redes @rivifybrasil

Participe da conversa

Você pode publicar agora e se cadastrar depois. Se você tem uma conta, entre agora para publicar com sua conta.

Convidado
Responder a este tópico...

Conta

Navegação

Procurar

Procurar

Configurar notificações push do navegador

Chrome (Android)
  1. Toque no ícone de cadeado ao lado da barra de endereços.
  2. Toque em Permissões → Notificações.
  3. Ajuste sua preferência.
Chrome (Desktop)
  1. Clique no ícone de cadeado na barra de endereços.
  2. Selecione Configurações do site.
  3. Encontre Notificações e ajuste sua preferência.