300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > unity实现图片轮播效果_unity 背景无限循环滚动效果

unity实现图片轮播效果_unity 背景无限循环滚动效果

时间:2023-10-13 22:26:29

相关推荐

unity实现图片轮播效果_unity 背景无限循环滚动效果

背景无限循环滚动效果如下示:

步骤如下:

导入背景图片后,设置图片的格式,如下图;

2.图片格式也可以设置是Texture格式,但是Wrap Mode 一定要是Repeat[重复发生];然后记得Apply一下。[解释:Wrap mode :循环模式;换行模式;包裹模式;缠绕]

3.在Hierachy视图中,新建2D Object-〉Sprite 或者一个Image,将之前设置好的精灵放入Texture。

4.在Project视图鼠标右键新建一个Shader,命名随意,然后在编辑器中修改Shader的代码,如下:

Shader "Unlit/ScrollX"

{

Properties

{

_MainTex("Base Layer(RGB)", 2D) = "white" {} // 纹理

_ScrollX("Base layer Scroll Speed",Float) = 1.0 // 滚动速度

_Mutiplier("Layer Mutiplier", Float) = //整体亮度

}

SubShader

{

Tags{ "RenderType" = "Opaque" "Queue" = "Geometry" }

LOD

Pass

{

Tags{ "LightMode" = "ForwardBase" }

CGPROGRAM

#pragma vertex vert

#pragma fragment frag

#include "UnityCG.cginc"

struct a2v

{

float4 vertex : POSITION;

float2 texcoord : TEXCOORD0;

};

struct v2f

{

float4 pos : SV_POSITION;

float2 uv : TEXCOORD0;

};

sampler2D _MainTex;

float4 _MainTex_ST;

float _ScrollX;

float _Mutiplier;

v2f vert(a2v v)

{

v2f o;

o.pos = UnityObjectToClipPos(v.vertex);

o.uv.xy = TRANSFORM_TEX(v.texcoord, _MainTex) + frac(float2 (_ScrollX, 0.0) * _Time.y);

return o;

}

fixed4 frag(v2f i) : SV_Target

{

fixed4 c = tex2D(_MainTex, i.uv.xy);

c.rgb *= _Mutiplier;

return c;

}

ENDCG

}

}

FallBack "VertexLit"

}

5.选中上一步建立好的Shader,鼠标右键新建一个Material[这是快捷创建方式,此时创建的Material所利用的Shader就是之前新建的shader],将需要设置滚动的背景图放到材质球的纹理图内,如下图;

6.将材质球放到步骤2中创建的对象的Material中,运行即可。

当然,这是针对背景是规则图形的,至于扇形面或者圆形,弧形的只能另外在考虑了。 另外第三步中,也是可以创建RawImage的,不过,就是图片对比Image和Sprite会变的暗些。图示,

这个并不是很清楚....

图片循环滚动效果shader

背景无限循环滚动效果,有X和Y轴的速度控制,方便控制.见下图,操作步骤同之前的背景循环设置. shader如下: Shader "Custom/Scroll" { Properti ...

Expression Blend4经验分享:文字公告无缝循环滚动效果

这次分享一个类似新闻公告板的无缝循环滚动效果,相信很多项目都会应用到这个效果.之前我也百度了一下,网上的一些Silverlight的文字或图片滚动效果,都是一次性滚动的,如果要做到无缝循环滚动,多数要 ...

cocos2d(背景图片循环滚动)

背景图片循环滚动 使用action 实现的: 主要有两个背景图片交替循环滚动:我选的两个背景图片的宽度都是1024的 ,所以定义了#defineBGIMG_WIDTH1024 代码如下: 在Hel ...

DIV+javascript实现首尾相连循环滚动效果

//W3C//DTD XHTML 1.0 Transitional//EN" "/ ...

Android实现ViewPager无限循环滚动回绕

 Android实现ViewPager无限循环滚动回绕 Android系统提供的ViewPager标准方式是左右可以自由滑动,但是滑动到最左边的极限位置是第一个page,滑动到最右边的位置是最后一 ...

iOS无限循环滚动scrollview

经常有园友会问"博主,有没有图片无限滚动的Demo呀?", 正儿八经的图片滚动的Demo我这儿还真没有,今天呢就封装一个可以在项目中直接使用的图片轮播.没看过其他iOS图片无限轮播 ...

marquee 实现首尾相连循环滚动效果

可以实现多种滚动效果,无需js控制.使用marquee标签不仅可以滚动文字,也可以滚动图片,表格等 marquee标签不是HTML3.2 ...

随机推荐

JavaScript:JavaScript中常见获取对象元素的方法

介绍: javascript中常见的3种获取元素的方法,分别是通过元素ID.通过标签名字和通过类名字来获取 操作如下: 1.getElementById DOM提供了一个名为getElementByI ...

Spark基础排序+二次排序(java+scala)

1.基础排序算法 sc.textFile()).reduceByKey(_+_,).map(pair=>(pair._2,pair._1)).sortByKey(false).map(pair= ...

Hbase之shell操作

一. 介绍 HBase是一个分布式的.面向列的 开源数据库,源于google的一篇论文.HBase是Google Bigtable的开源 ...

JAX-WS(JWS)发布WebService

WebService历来都很受重视,特别是Java阵营,WebService框架和技术层出不穷.知名的XFile(新的如CXF).Axis1.Axis2等. 而Sun公司也不甘落后,从早期的JAX-R ...

[转]swift 学习资源 大集合

今天看到了一个swift的学习网站,里面收集了很多学习资源 [转自/sqc3375177/article/details/29206779] Swift 介绍 ...

SpringMVC 的运行原理

0. 灵魂的拷问 问:SpringMVC 是什么?它有什么作用?答:SpringMVC 的全称是 Spring Web Model-View-Controller,它是 Spring Fram ...

Guitar Pro里自动化编辑器有什么用?如何使用?

我们在使用操作Guitar Pro来进行吉他学习创作时,会遇到下面几个问题.当我们想要改变全部小节或者某一特定小节的拍速时,就会在想,有没有什么简便工具来实现我们的想法呢?告诉大家,Guitar Pr ...

osgi.net框架简介

是一个动态的模块化框架.它向用户提供了模块化与插件化.面向服务构架和模块扩展支持等功能.该平台是OSGi联盟定义的服务平台规范移植到.NET的实现. 简介 尤埃开放服务平台是一个基于. ...

jquery实现增删改(伪)-老男孩作业day13

使用jquery进行,文件的编写,实现自增id,删除,添加,编辑模式. jquery放在本地,src="jquery_js.js" 可以改成其他,或者在线的路径 readme &l ...

Code Chef April Cook-Off 题解

传送门 \(PEWDSVTS\) 我哪根筋不对了要把所有可行的拿出来\(sort\)一下--还有忘开\(long\ long\)真的好难受-- int main(){ // freopen(&quot ...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。