当前位置: 首页 > news >正文

urho3d工具

AssetImporter

加载开放资源导入库支持的各种三维格式(http://assimp.sourceforge.net/)并保存Urho3D模型、动画、材质和场景文件。有关支持的格式列表,请参阅http://assimp.sourceforge.net/main_features_formats.html.

Blender的另一种导出路径是使用Urho3D插件(https://github.com/reattiva/Urho3D-Blender).

用法:

AssetImporter <command> <input file> <output file> [options]

Commands:

model       Output a model

anim        Output animation(s)

scene       Output a scene

node        Output a node and its children (prefab)

dump        Dump scene node structure. No output file is generated

lod         Combine several Urho3D models as LOD levels of the output model

            Syntax: lod <dist0> <mdl0> <dist1 <mdl1> ... <output file>

Options:

-b          Save scene in binary format, default format is XML

-j          Save scene in JSON format, default format is XML

-h          Generate hard instead of smooth normals if input has no normals

-i          Use local ID's for scene nodes

-l          Output a material list file for models

-na         Do not output animations

-nm         Do not output materials

-nt         Do not output material textures

-nc         Do not use material diffuse color value, instead output white

-nh         Do not save full node hierarchy (scene mode only)

-ns         Do not create subdirectories for resources

-nz         Do not create a zone and a directional light (scene mode only)

-nf         Do not fix infacing normals

-ne         Do not save empty nodes (scene mode only)

-mb <x>     Maximum number of bones per submesh. Default 64

-p <path>   Set path for scene resources. Default is output file path

-r <name>   Use the named scene node as root node

-f <freq>   Animation tick frequency to use if unspecified. Default 4800

-o          Optimize redundant submeshes. Loses scene hierarchy and animations

-s <filter> Include non-skinning bones in the model's skeleton. Can be given a

            case-insensitive semicolon separated filter list. Bone is included

            if its name contains any of the filters. Prefix filter with minus

            sign to use as an exclude. For example -s "Bip01;-Dummy;-Helper"

-t          Generate tangents

-v          Enable verbose Assimp library logging

-eao        Interpret material emissive texture as ambient occlusion

-cm         Check and do not overwrite if material exists

-ct         Check and do not overwrite if texture exists

-ctn        Check and do not overwrite if texture has newer timestamp

-am         Export all meshes even if identical (scene mode only)

-bp         Move bones to bind pose before saving model

-split <start> <end> (animation model only)

            Split animation, will only import from start frame to end frame

-np         Do not suppress $fbx pivot nodes (FBX files only)

材质列表是一个文本文件,每行一个材质,保存在Urho3D模型旁边。场景编辑器使用它在为StaticModel、StaticModelGroup、AnimatedModel或Skybox组件设置新模型时自动应用导入的默认材质,也可以通过调用ApplyMaterialList()手动调用。如果不需要,可以安全地删除列表文件。

在模型或场景模式下,AssetImport实用程序还将自动将非骨架节点动画保存到输出文件目录中。

OgreImporter

加载OGRE.mesh.xml和.skeleton.xml文件,并将它们保存为Urho3D.mdl(模型)和.ani(动画)文件。有关其他3D格式和整个场景导入,请参见AssetImport。然而,该工具不能像这样完整地处理OGRE格式。

用法:

OgreImporter <input file> <output file> [options]

Options:

-l      Output a material list file

-na     Do not output animations

-nm     Do not output morphs

-r      Output only rotations from animations

-s      Split each submesh into own vertex buffer

-t      Generate tangents

-mb <x> Maximum number of bones per submesh, default 64

注意:在不同的模型中使用动画时,仅输出骨骼旋转可能会有所帮助,但如果已使用骨骼位置更改来实现效果,则动画可能会变得不那么生动。由于Urho3D没有专门尝试重新定位动画,因此在原本不适合的模型中使用动画可能会导致无法预测的残缺。

PackageTool

递归检查目录中的文件和子目录,并创建PackageFile。可以将包文件添加到ResourceCache中,并将其用作文件系统(只读)中的文件。可以选择使用LZ4压缩库压缩文件数据。

在Android上使用程序包文件时要小心,因为.apk本身已经是一个程序包,由于已经使用了压缩,任意查找可能会执行得很差。从实验上看,在Android上,压缩包可能是有利的,因为在这种情况下,.apk包可能会跳过自己的压缩,从而获得更好的搜索和读取性能。

包装:

PackageTool -p<options> <input directory name> <output package name> [base path]

Options:

  q - enable quiet mode

  c - enable LZ4 compression

Base path is an optional prefix that will be added to the file entries.

当PackageTool运行时,它将进入源目录,然后查找子目录和任何文件。默认情况下,包内的路径将相对于源目录,但如果需要额外的路径前缀,则可以通过可选的基本路径参数指定。

例如,这会将Urho3D Data目录中的所有资源文件转换为名为Data.pak的包(从bin目录执行命令)

  PackageTool -pcq Data Data.pak"

-c选项启用文件上的LZ4压缩。q选项允许在不向标准输出流发送输出的情况下执行操作。

开箱:

   PackageTool -u<options> <input package name> <output directory name>

  Options:

    q - enable quiet mode

例如

   PackageTool -uq CoreData.pak CoreData

打印信息:

    PackageTool -<mode> <package name>

    Modes:

    i - print package file information

    l - print file names (including their paths) contained in the package

    L - similar to l but also output compression ratio (compressed package file only)

例如:

    PackageTool -i CoreData.pak

RampGenerator

创建用于灯光衰减和聚光灯光斑形状的1D和2D渐变纹理。或者从.ies输入文件烘焙图像。 hōng bèi

用法:        

  RampGenerator <output file> <width> <power> [dimensions]

RampGenerator <input file> <output png file> <width> [dimensions]

输出以PNG格式保存。功率参数被输入到pow()函数以确定斜坡形状;值越高,边缘处的亮度越高,褪色越突然。

SpritePacker

获取一系列图像并将其打包到单个纹理中,然后创建一个sprite sheet xml文件。

用法:

   SpritePacker -options <input file> <input file> <output png file>

Options:

    -h Shows this help message.

    -px Adds x pixels of padding per image to width.

    -py Adds y pixels of padding per image to height.

    -ox Adds x pixels to the horizontal position per image.

    -oy Adds y pixels to the horizontal position per image.

    -frameHeight Sets a fixed height for image and centers within frame.

    -frameWidth Sets a fixed width for image and centers within frame.

    -trim Trims excess transparent space from individual images offsets by frame size.

    -xml 'path' Generates an SpriteSheet xml file at path.

    -debug Draws allocation boxes on sprite.

脚本编译器

将AngelScript文件编译为二进制字节码,以加快加载速度。还可以以Doxygen格式转储脚本API。

用法    

ScriptCompiler <input file> [resource path for includes]

ScriptCompiler -dumpapi <Doxygen output file> [C header output file]

输出文件以.asc(编译的AngelScript.)扩展名保存。二进制文件不会自动加载,而不是文本格式(.as)脚本文件,而是对象中的资源请求和资源引用需要指向编译的文件。在应用程序的最终构建中,简单地用编译的脚本替换文本格式的脚本文件可能很方便。

脚本API转储模式可用于替换“Docs”目录中的“ScriptAPI.dox”文件。如果未提供输出文件名,则脚本API将被转储到标准输出(控制台)。

相关文章:

urho3d工具

AssetImporter 加载开放资源导入库支持的各种三维格式(http://assimp.sourceforge.net/)并保存Urho3D模型、动画、材质和场景文件。有关支持的格式列表&#xff0c;请参阅http://assimp.sourceforge.net/main_features_formats.html. Blender的另一种导出路径是使用Urho3D插件…...

HashMap数据结构

HashMap概述 HashMap是基于哈希表的Map接口实现的&#xff0c;它存储的是内容是键值对<key,value>映射。此类不保证映 射的顺序&#xff0c;假定哈希函数将元素适当的分布在各桶之间&#xff0c;可为基本操作(get和put)提供稳定的性能。 HashMap在JDK1.8以前数据结构和存…...

BFC的含义以及应用

什么是BFC? BFC全称是Block Formatting context&#xff0c;翻译过来就是块级格式化上下文。简单来说&#xff0c;BFC是一个完全独立的空间。让空间里的子元素不会影响到外面的布局。&#x1f603;&#x1f603;&#x1f603; 如何触发BFC呢&#xff1f; mdn给了如下方式&a…...

电脑技巧:分享8个Win11系统必备小技巧

目录 1、让任务栏显示“右键菜单” 2、任务栏置顶 3、还原经典右键菜单 4、Win11版任务管理器 5、新版AltTab 6、开始菜单不再卡 7、为Edge浏览器添加云母效果 8、自动切换日/夜模式 Win11在很多地方都做了调整&#xff0c;但由于涉及到诸多旧有习惯&#xff0c;再加上…...

C/C++每日一练(20230226)

目录 17. 电话号码的字母组合 37. 解数独 51. N 皇后 52. N皇后 II 89. 格雷编码 90. 子集 II 17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下&#xff08;与电…...

Vue 3第二章:Vite文件目录结构及SFC语法

文章目录1. Vite 文件目录结构2. Vue3 SFC 语法规范介绍1. Vite 文件目录结构 Vue3 并没有强制规定文件目录结构&#xff0c;开发者可以按照自己喜欢的方式组织代码。不过&#xff0c;通常情况下&#xff0c;我们会按照以下方式组织文件目录&#xff1a; ├── public │ …...

Leetcode 剑指 Offer II 016. 不含重复字符的最长子字符串

题目难度: 中等 原题链接 今天继续更新 Leetcode 的剑指 Offer&#xff08;专项突击版&#xff09;系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的最长…...

TCP 的演化史-sack 与 reordering metric

就着 TCP 本身说事&#xff0c;而不是高谈阔论关于它是如何不合时宜&#xff0c;然后摆出一个更务虚的更新。 从一个 case 开始。 按照现在 Linux TCP(遵守 RFC) 实现&#xff0c;以下是一个将会导致 reordering 更新的 sack 序列&#xff1a; 考虑一种情况&#xff0c;这两个…...

【Spring6】| Spring的入门程序、集成Log4j2日志框架

目录 一&#xff1a;Spring的入门程序 1. Spring的下载 2. Spring的jar文件 3. 第一个Spring程序 4. 第一个Spring程序详细剖析 5. Spring6启用Log4j2日志框架 一&#xff1a;Spring的入门程序 1. Spring的下载 官网地址&#xff1a;https://spring.io/ 官网地址&…...

包子凑数(完全背包)

小明几乎每天早晨都会在一家包子铺吃早餐。 他发现这家包子铺有 N 种蒸笼&#xff0c;其中第 i种蒸笼恰好能放 Ai 个包子。 每种蒸笼都有非常多笼&#xff0c;可以认为是无限笼。 每当有顾客想买 X 个包子&#xff0c;卖包子的大叔就会迅速选出若干笼包子来&#xff0c;使得这若…...

Spring超级全家桶,学完绝对是惊艳面试官的程度

前言Spring框架自2002年诞生以来一直备受开发者青睐&#xff0c;它包括SpringMVC、SpringBoot、Spring Cloud、Spring Cloud Dataflow等解决方案。有人亲切的称之为&#xff1a;Spring 全家桶。很多研发人员把spring看作心目中最好的java项目&#xff0c;没有之一。所以这是重点…...

Redis主要数据类型

Redis 是一个数据结构服务器。 Redis 的核心是提供一系列本机数据类型&#xff0c;可帮助您解决从缓存到队列再到事件处理的各种问题Redis主要数据类型&#xff1a;String&#xff08;字符串&#xff09;&#xff0c;Lists&#xff08;列表&#xff09;&#xff0c;Sets&#x…...

【Linux | ELK 8.2】搭建ELKB集群Ⅰ—— 实验环境说明和搭建Elasticsearch集群

目录1. 实验环境1.1 实验工具1.2 操作系统1.3 架构版本、IP地址规划与虚拟机配置要求1.4 拓扑图1.5 其他要求2. 实验步骤2.1 安装Elasticsearch&#xff08;单节点&#xff09;&#xff08;1&#xff09;检查系统jdk版本&#xff08;2&#xff09;下载elasticsearch&#xff08…...

不同情况下*p和*p的区别(指针)

一说到指针&#xff0c;不少同学就会觉得云里雾里。首先要明白&#xff0c;指针和地址是一个概念&#xff1b;然后明白指针和指针变量的区别。先理解地址和数据&#xff0c;想象内存里面是一个个的小盒子&#xff0c;每个盒子对应一个编号&#xff0c;这个编号就是地址&#xf…...

Vuex基础语法

Vuex vuex官网 文章目录Vuexvuex的工作原理图2.vuex的环境搭建3.vuex的使用1.actons2. mutations3.getters4.vuex中的map映射属性4.1 mapState和mapGetters4.2 mapMutations和mapActions5.vuex多组件通信1.通过计算属性获得2.通过mapState获得6.vuex模块化和命名空间6.1模块化…...

刚上岸字节测试开发岗,全网最真实的大厂面试真题

首先我来解释一下为什么说是全网最真实的面试题&#xff0c;相信大家也发现软件测试面试题在网上流传也已不少&#xff0c;但是经过仔细查看发现了两个很重要的问题。 第一&#xff0c;网上流传的面试题的答案并不能保证百分百正确。也就是说各位朋友辛辛苦苦花了很多时间准备…...

Mac监控键盘输入并执行动作

最新内容在我的另一个博客&#xff1a;Mac监控键盘输入并执行动作 背景 电脑的安全是非常重要的&#xff0c;特别是里面的敏感数据&#xff0c;若是被有心之人利用&#xff0c;那后果不堪设想。 所以我们部门定下了一个规矩&#xff0c;谁离开工位要是不锁屏&#xff0c;就可以…...

Transformer输出张量的值全部相同?!

Transformer输出张量的值全部相同&#xff1f;&#xff01;现象原因解决现象 输入经过TransformerEncoderLayer之后&#xff0c;基本所有输出都相同了。 核心代码如下&#xff0c; from torch.nn import TransformerEncoderLayer self.trans TransformerEncoderLayer(d_mode…...

港科夜闻|全国政协副主席梁振英先生率香港媒体高管团到访香港科大(广州)...

关注并星标每周阅读港科夜闻建立新视野 开启新思维1、全国政协副主席梁振英先生率香港媒体高管团到访香港科大(广州)。2月21日下午&#xff0c;在全国政协副主席、广州南沙粤港合作咨询委员会顾问梁振英先生的带领下&#xff0c;香港20余家媒体的高管及知名媒体人士到访香港科大…...

XML调用 CAPL Test Function

&#x1f345; 我是蚂蚁小兵&#xff0c;专注于车载诊断领域&#xff0c;尤其擅长于对CANoe工具的使用&#x1f345; 寻找组织 &#xff0c;答疑解惑&#xff0c;摸鱼聊天&#xff0c;博客源码&#xff0c;点击加入&#x1f449;【相亲相爱一家人】&#x1f345; 玩转CANoe&…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文&#xff1f; 多租户隔离&#xff1a;自动为接入设备追加租户前缀&#xff0c;后端按 ClientID 拆分队列。零代码鉴权&#xff1a;将入站用户名替换为 OAuth Access-Token&#xff0c;后端 Broker 统一校验。灰度发布&#xff1a;根据 IP/地理位写…...

C++.OpenGL (10/64)基础光照(Basic Lighting)

基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

多种风格导航菜单 HTML 实现(附源码)

下面我将为您展示 6 种不同风格的导航菜单实现&#xff0c;每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象&#xff1a;mysql已经安装&#xff0c;但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时&#xff0c;可能是因为以下几个原因&#xff1a;1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

企业如何增强终端安全?

在数字化转型加速的今天&#xff0c;企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机&#xff0c;到工厂里的物联网设备、智能传感器&#xff0c;这些终端构成了企业与外部世界连接的 “神经末梢”。然而&#xff0c;随着远程办公的常态化和设备接入的爆炸式…...

rnn判断string中第一次出现a的下标

# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

C++.OpenGL (14/64)多光源(Multiple Lights)

多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

【笔记】WSL 中 Rust 安装与测试完整记录

#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统&#xff1a;Ubuntu 24.04 LTS (WSL2)架构&#xff1a;x86_64 (GNU/Linux)Rust 版本&#xff1a;rustc 1.87.0 (2025-05-09)Cargo 版本&#xff1a;cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...