using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
public class MyEditorUtils
{
[MenuItem("GameTools/遍历Hierarchy")]
static void GetAllSceneObjectsWithInactive()
{
var allGos = Resources.FindObjectsOfTypeAll(typeof(GameObject));
var previousSelection = Selection.objects;
Selection.objects = allGos;
var selectedTransforms = Selection.GetTransforms(SelectionMode.Editable | SelectionMode.ExcludePrefab);
Selection.objects = previousSelection;
foreach(var trans in selectedTransforms)
{
Debug.Log(trans.name);
}
}
}
相关推荐
Unity开发实战:空物体与坐标系在场景组织与精准操控中的应用
在游戏开发与3D应用构建中,场景组织与空间计算是基础且核心的技术环节。其原理在于通过层级结构与坐标系统来管理对象间的空间关系,从而实现高效的数据组织与精准的交互控制。掌握这些技术对于提升项目可维护性、减少代码复杂度具有重要价值,广泛应用于游戏对象管理、UI跟随、动画系统与物理模拟等场景。本文聚焦于Unity引擎中的具体实践,深入探讨如何利用空物体(Empty GameObject)作为场景架构的万能胶,并结合世界、本地、屏幕等坐标系转换,解决诸如物体分组、动态生成点管理、自定义枢轴点定义以及3D标签平滑跟随
【unity】获取所有的子对象(包括隐藏对象)
transform.GetComponentsInChildren(true)
Unity网格合并优化:保持层级结构降低Draw Call的实战方案
在Unity游戏开发中,Draw Call优化是提升渲染性能的核心技术之一。其原理在于减少CPU向GPU发送绘制指令的次数,通过合并使用相同材质的静态网格来显著降低Draw Call数量,这对于移动端和WebGL等性能受限平台尤为重要。网格合并技术不仅能提升帧率,还能有效缓解编辑器卡顿问题。在实际工程实践中,开发者常面临合并后层级结构被打乱的难题,这会影响场景管理、动态交互和LOD设置。本文通过实现一个保持原始层级结构的批量合并工具,详细解析了静态合并与运行时动态合并两种方案的选择,并深入探讨了光照贴图UV
Unity 找到所有组件(包括隐藏的物体)
这是一种偷懒的方式 可以直接给所有按钮增加播放音效,不用一个一个的写。这种加组件的方式,退出运行模式之后,增加的组件也还是在的。
Unity性能优化:SetActive与activeSelf的性能差异与最佳实践
在Unity游戏开发中,性能优化是确保应用流畅运行的核心环节,尤其涉及高频状态切换时。理解引擎底层机制是优化的基础,其中GameObject的活跃状态管理是关键。SetActive方法用于激活或停用物体,但其调用会触发引擎内部一系列操作,包括组件生命周期回调(如OnEnable/OnDisable)及子系统更新,开销较大。相比之下,activeSelf属性作为只读查询,仅读取底层状态值,成本极低。从技术价值看,通过先读取activeSelf判断状态,再决定是否调用SetActive,能有效避免冗余操作,减少
Unity3D脚本隐藏GameObject子物体1
Unity3D脚本:隐藏GameObject子物体 Posted on 2013年01月22日 by U3d / Unity3D脚本/插件/被围观 414 次
Unity Editor输出Hierarchy面板选择物体的数量
using UnityEngine; using UnityEditor; public class RightMouseButtonMenu : Editor { [MenuItem("GameObject/Get Selection Count", false, 0)] public static void GetSelectionCount(MenuCommand men...
kaggle社区LLM Classification Finetuning
预测用户在一个由大型语言模型(LLMs)驱动的聊天机器人之间的正面交锋中会偏好哪些回应。获得来自聊天机器人竞技场(Chatbot Arena)的对话数据集,其中不同的LLMs对用户的提示生成答案。通过开发一个胜出的机器学习模型,帮助改进聊天机器人与人类的互动方式,并确保它们更好地符合人类的偏好。实际上是进行一个序列的分类。
Unity遍历Hierarchy上的所有物体并清除指定组件
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; public class ClearComponent { [MenuItem("我的编辑器/多个物体组件清除")] static void ClearComponentMore() { var allGos = Resources.FindObjectsOfTypeAl
AI基础入门(大模型基础篇)——技术视角:你应该知道的LLM基础知识
本文从技术视角解析了大模型的工作原理,主要介绍了三个核心概念:Token、温度和Embedding。首先,大模型通过逐个添加Token来生成文本,Token数量直接影响上下文窗口大小和计费标准。其次,通过引入温度参数控制随机性,温度越高输出越多样化。最后,解释了字符串如何通过One-Hot编码和神经网络压缩转化为向量形式的Embedding,这是AI处理各类输入的基础。这些概念对理解大模型应用开发至关重要,Token决定处理能力,温度影响输出风格,Embedding则是信息转换的关键步骤。
告别水印!Vue3项目集成Stimulsoft.Reports.js完整配置与激活指南
本文详细介绍了如何在Vue3项目中集成Stimulsoft.Reports.js,提供从授权策略到性能优化的完整解决方案。通过模块化架构设计和现代化引入方式,帮助开发者高效实现专业级报表功能,同时避免版权风险和水印问题,特别适合中小型项目需求。
Unity遍历Hierarchy上的所有物体,包括隐藏物体
Unity遍历Hierarchy上的所有物体,包括隐藏物体 代码如下 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; public class MyEditorUtils { [MenuItem("GameTools/遍历Hierarchy...
微信图片.dat文件解密实战:用Python一键转PNG(附完整代码)
本文详细介绍了如何通过Python解密微信图片.dat文件并转换为PNG格式的完整教程。文章深入解析了微信.dat文件的异或加密原理,提供了自动检测密钥的Python脚本,并分享了批量解密和性能优化的实用技巧,帮助用户轻松恢复和整理微信聊天图片。
Unity 遍历场景所有物体(包括隐藏及被禁用的物体)
//用于获取所有Hierarchy中的物体,包括被禁用的物体 private List<GameObject> GetAllSceneObjectsWithInactive() { var allTransforms = Resources.FindObjectsOfTypeAll(typeof(Transform)); ...
【数字孪生与仿真技术】06:航天器系统建模与验证全流程实战:从多学科建模到数字孪生(附完整代码与工业案例)
摘要:航天器系统开发面临多学科耦合强、验证流程复杂、可靠性要求极高的挑战。本文基于MATLAB/Simulink平台,系统阐述航天器从多域建模、动力系统开发到任务验证的全流程技术框架。内容涵盖Modelica统一建模规范、光伏-电池联合供电系统仿真、基于模型的需求追溯方法、蒙特卡洛可靠性分析及硬件在环测试等核心技术,并结合James Webb太空望远镜电力系统案例,展示工业级应用实践。文中提供完整的Simulink模型代码、仿真结果及流程图,最后探讨数字孪生与AI增强技术在航天器在轨运维中的未来应用。
orin+96712接GMSL2相机调试经验
orin gmsl camera调试
unity 获取场景所有物体
unity 获取场景所有物体 https://blog.youkuaiyun.com/u013341672/article/details/81129641 Unity 遍历场景所有物体(包括隐藏及被禁用的物体) //用于获取所有Hierarchy中的物体,包括被禁用的物体 private List<GameObject> GetAllSceneObjectsWithI...
车载ECU底软测试:方法与技术的深度解析
底软是运行在 ECU 硬件平台上的基础软件,它为上层应用程序提供了硬件驱动、操作系统服务、通信协议栈等功能。底软的主要功能包括:硬件驱动:负责与 ECU 的各种硬件外设进行通信和控制,如 GPIO、UART、SPI、CAN 等。操作系统服务:提供任务调度、内存管理、中断处理等功能,确保系统的实时性和稳定性。通信协议栈:实现 ECU 与其他 ECU 或外部设备之间的通信,如 CAN、LIN、FlexRay 等。诊断服务:负责对 ECU 的故障进行诊断和处理,并将故障信息存储在故障码存储器中。
unity中查找hierarchy面板对象,包含隐藏对象。
当使用GameObject.Find无法查找被隐藏的物体,在网上查找了一些方法发现都无法在运行模式下运行,根据查找到方法修改编写了俩方法放到脚本中可以直接使用,在运行状态下也可获取隐藏的物体。在初始化的时候获取hierarchy面板对象的时候使用。
STM32F407中文手册
STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。
老版QQ原生表情gif动态
这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。
Unity获取场景中所有根物体
Unity获取场景中所有根物体
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
unity3d 如何遍历一个物体下的所有子物体 (包括active为false的子物体)
一、Gameobject.Find("游戏对象名") //根据对象名直接获取游戏对象 这个方法可以找到指定的对象,但是一些缺陷。 缺陷1:如果场景中有重名,此方法找到的是Hierarchy从上至下第一次出现此对象名的对象。 解决办法: Gameobject.Find("Parent/Son/游戏对象名") //通过路径找,路径间用 / 隔开 缺陷2:如果对象的activeSelf为false,并且Find()括号内的路径小于3个节点,那么这个方法永远无法找到对象。 如:prin...
Unity3D 销毁物体的三种方式
销毁物体 三种方式,各有不同 使用SetActive 中文文档 使用 gameObject.SetActive(bool);设置物体的显示或者隐藏来大小销毁的效果,但它还是存在的,在Hierarchy中还是可以找到他的。 作用就像是点击Inspector中的物体名称前面的对勾。 //使用方式 gameObject.SetActive(true);//显示 gameObject.SetActive(false);//隐藏 他会再次执行Enable方法,不会执行Awake和Start方法。 使用Dest
unity常见面试题
接口是一种完全抽象的类型,它只定义了成员的签名,但没有提供成员的实现。接口定义了对象应该具有的方法、属性和事件。抽象类是一种包含了抽象成员(方法、属性、索引器、事件)的类,它可以包含抽象成员和非抽象成员的实现。抽象类可以包含方法的实现,也可以包含字段和构造函数等。
Unity性能优化:深入解析SetActive开销与六种高效替代方案
在游戏开发与实时应用构建中,对象显隐管理是影响运行时性能的关键环节。其核心原理在于,直接切换对象激活状态会触发引擎底层的全量组件更新与生命周期回调,这在复杂UI或高频操作场景下极易引发主线程卡顿。从技术价值看,理解并规避这类“隐形开销”是提升应用流畅度与用户体验的基础。常见的应用场景包括UI界面切换、动态物体生成回收以及开放世界细节管理等。本文聚焦Unity引擎中的SetActive操作,通过剖析其引发的渲染器更新、布局重建与回调执行等连锁反应,自然引出CanvasGroup.alpha、Renderer.
338



被折叠的 条评论
为什么被折叠?



