如图所示:

C#代码:

 using System.Collections;
using System.Collections.Generic;
using UnityEngine; public class SpriteRendererTest : MonoBehaviour {
List<Transform> list = new List<Transform>(); // 存储父物体的子对象
List<float> rendererWidthList = new List<float>(); // 存储子对象的宽度
private Vector3 centerPos = Vector3.zero; // 中心位置
private float offSet = 0.2f; //偏移量
private float length = 0.0f; // 初始化长度 void Start () {
// 遍历所有子对象
for (int i = ; i < gameObject.transform.childCount; i++) {
var child = gameObject.transform.GetChild(i);
var width = child.GetComponent<SpriteRenderer>().sprite.bounds.size.x;
if (i < gameObject.transform.childCount - )
{
length += width + offSet;
}
else {
length += width;
}
list.Add(child);
rendererWidthList.Add(width);
}
var startX = centerPos.x - length / 2.0f; //第一个子对象的左边界
foreach (var child in list)
{
int index = ;
child.transform.position = new Vector3(startX + rendererWidthList[index] / 2.0f, , );
startX = startX + offSet + rendererWidthList[index];
index += ;
}
}
}

lua代码:

 -- 创建数组
local parent = UGameObject.Find("Parent")
local objectList = {}
local rendererWidthList = {}
for i = , parent.transform.childCount do
local child = parent.transform:GetChild(i - )
local renderer = child:GetComponent(typeof(USpriteRenderer))
local width = renderer.sprite.bounds.size.x
table.insert(objectList, child)
table.insert(rendererWidthList, width)
end local length = -- 初始化长度
local offSet = 0.2 -- 间隔
for i = , #objectList do
local obj = objectList[i]
local width = rendererWidthList[i]
if i == #objectList then
length = length + width
break
end
length = length + width + offSet
end local centerPos = Vector3.zero -- 中心位置
local startX = centerPos.x - length / -- 初始位置 for i = , #objectList do
local obj = objectList[i]
local width = rendererWidthList[i]
obj.transform.position = Vector3(startX + width / , , )
startX = startX + width + offSet
end

2d图片依次排列在屏幕中间(SpriteRenderer)的更多相关文章

  1. WPF编程,通过DoubleAnimation控制图片的透明度,将重叠的图片依次显示。

    原文:WPF编程,通过DoubleAnimation控制图片的透明度,将重叠的图片依次显示. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307 ...

  2. 基于jQuery图片自适应排列显示代码

    基于jQuery图片自适应排列显示代码.这是一款基于jquery.flex-images插件实现的类似谷歌图片流效果.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div ...

  3. NGUI如何使2D图片按像素1:1显示在屏幕上

    NGUI版本为3.5.1. 将camera 设置为正交模式,size值设为1. UIRoot(2D)有3种缩放样式: 1.PixelPerfect.UI严格按照指定的像素大小显示,不会随着屏幕的分辨率 ...

  4. 横向图片墙排列算法及demo

    演示地址: http://codeman35.itongyin.com:19005/v1/9gg_v2.html 功能: 按照不同的图片比例,进行横向9宫格排列,原则是尽量排列的整齐,不要多余出来格子 ...

  5. Android 图片文件操作、屏幕相关、.9图片的理解

     一:Android图片操作 1.存储bitmap到本地文件系统 public static void bitmapToFile(Bitmap bitmap, String uri) { if(!ex ...

  6. 从2D图片生成3D模型(3D-GAN)

    https://blog.csdn.net/u014365862/article/details/54783209 3D-GAN是使用生成对抗网络学习2D图像到3D模型的映射,生成网络负责生成3D模型 ...

  7. ajax读取图片后排列问题(先加载完图片再排列)

    网上找了个瀑布流的图片排列插件.从数据库读取图片路径后显示时出现了位置重叠问题. $.ajax({ type: "POST", url: "index.aspx" ...

  8. html中图片自适应浏览器和屏幕,宽度高度自适应

    1.(宽度自适应):在网页代码的头部,加入一行viewport元标签. <meta name="viewport" content="width=device-wi ...

  9. HMS Core AR Engine 2D图片/3D物体跟踪技术 助力打造更智能AR交互体验

    AR技术已经被广泛应用于营销.教育.游戏.展览等场景.通过2D图像跟踪技术和3D物体跟踪技术,用户只需使用一台手机进行拍摄,即可实现海报.卡牌等平面物体以及文物.手办等立体物体的AR效果.尽管近年来2 ...

随机推荐

  1. Nginx 核心配置-单节点实现多域名访问

    Nginx 核心配置-单节点实现多域名访问 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.试验环境说明 1>.虚拟机环境说明 [root@node101.yinzheng ...

  2. 两数相加[链表加法] LeetCode.2

    给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和 ...

  3. Python基础之函数定义及文件修改

    函数 函数的定义 #登录函数和注册函数 def register(): """注册函数""" username = input('请输入你的 ...

  4. CUDA10安装配置

    https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64&target_vers ...

  5. python发邮件报错SMTP AUTH extension not supported by server."

    在login(username,password)之前添加 smtp.ehlo() smtp.starttls() d ={'smtp_server': '','smtp_email': '','sm ...

  6. selenium--等待的三种方式

    前戏 在我们做UI自动化的时候,最不稳定的就是页面了,由于各种原因页面的元素没有加载出来,比如网速慢,服务器响应慢等等,这时候如果我们去操作页面的元素,selenium会给我们抛出一个NoSuchEl ...

  7. json 字符串 反序列化

    private void button17_Click(object sender, EventArgs e) { string s = "{\"returnCode\" ...

  8. NDCG、AUC介绍

    https://blog.csdn.net/u014313009/article/details/38944687 SIGIR的一篇推荐算法论文中提到用NDCG和AUC作为比较效果的指标,之前没了解过 ...

  9. docker compose yml 文件常用字段简介

    常用参数: version # 指定 compose 文件的版本 services # 定义所有的 service 信息, services 下面的第一级别的 key 既是一个 service 的名称 ...

  10. Linux搭建简单的http文件服务器

    为了让自动化脚本可以通过wget来下载安装包,需要在集群中的某个节点部署一个http文件服务器 在Ubuntu中通过apt-get install apache2 安装apache2CentOS7中通 ...