Unity -- 用EasyAR制作出AR红包













01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
|
using UnityEngine; using System.Collections; using UnityEngine.UI; public class Move : MonoBehaviour { public GameObject par; / / Use this for initialization void Start ( ) { } / / Update is called once per frame void Update ( ) { transform.Translate ( - transform.forward * 2 f * Time.deltaTime ) ; if ( transform. position .z < -8 f ) { Destroy ( this.gameObject ) ; } } } |
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
using UnityEngine; using System.Collections; public class CreateHong : MonoBehaviour { public Transform[] points; public GameObject[] hongbaos; private int index ; / / Use this for initialization void Start ( ) { InvokeRepeating ( "CreateHongbao" , 1 f , 1 f ) ; } / / Update is called once per frame void Update ( ) { } void CreateHongbao ( ) { int i = Random.Range ( 0 , 10 ) ; if ( i > 1 ) { index = 0 ; } else { index = 1 ; } GameObject go = GameObject.Instantiate ( hongbaos [ index ] , points [Random.Range ( 0 , points.Length ) ]. position + new Vector 3 ( Random.Range ( -0.5 f , 0.5 f ) , 0 , 0 ) , Quaternion.identity ) as GameObject; go.transform.Rotate ( new Vector 3 ( 270 , 180 , 0 ) ) ; } } } |
1
2
3
4
5
6
7
8
9
|
void OnMouseDown ( ) { if ( gameObject. tag = = "Hong" ) { Debug.Log ( "ddd" ) ; } else if ( gameObject. tag = = "HongBao" ) { CreateHong._instace.isCreate = false ; GameObject go = GameObject.Instantiate ( par , gameObject.transform. position , Quaternion.identity ) as GameObject; Destroy ( go , 2 f ) ; } } |



<ignore_js_op>
<ignore_js_op>
1
2
3
4
|
void Awake ( ) { _instace = this; } |
1
2
3
4
|
public void PlayScale ( ) { daxiao.gameObject.SetActive ( true ) ; daxiao.PlayForward ( ) ; } |
01
02
03
04
05
06
07
08
09
10
|
void OnMouseDown ( ) { if ( gameObject. tag = = "Hong" ) { Debug.Log ( "ddd" ) ; } else if ( gameObject. tag = = "HongBao" ) { CreateHong._instace.isCreate = false ; GameObject go = GameObject.Instantiate ( par , gameObject.transform. position , Quaternion.identity ) as GameObject; Destroy ( go , 2 f ) ; CreateHong._instace.PlayScale ( ) ; } } |
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
using UnityEngine; using System.Collections; using UnityEngine.UI; public class Move : MonoBehaviour { public GameObject par; / / Use this for initialization void Start ( ) { } / / Update is called once per frame void Update ( ) { transform.Translate ( - transform.forward * 2 f * Time.deltaTime ) ; if ( transform. position .z < -8 f ) { Destroy ( this.gameObject ) ; } } void OnMouseDown ( ) { if ( gameObject. tag = = "Hong" ) { Debug.Log ( "ddd" ) ; } else if ( gameObject. tag = = "HongBao" ) { CreateHong._instace.isCreate = false ; GameObject go = GameObject.Instantiate ( par , gameObject.transform. position , Quaternion.identity ) as GameObject; Destroy ( go , 2 f ) ; CreateHong._instace.PlayScale ( ) ; } } } |
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
using UnityEngine; using System.Collections; public class CreateHong : MonoBehaviour { public static CreateHong _instace; public Transform[] points; public GameObject[] hongbaos; private int index ; public bool isCreate; public TweenScale daxiao; void Awake ( ) { _instace = this; isCreate = true ; } / / Use this for initialization void Start ( ) { InvokeRepeating ( "CreateHongbao" , 1 f , 1 f ) ; } / / Update is called once per frame void Update ( ) { } void CreateHongbao ( ) { if ( isCreate ) { int i = Random.Range ( 0 , 10 ) ; if ( i > 1 ) { index = 0 ; } else { index = 1 ; } GameObject go = GameObject.Instantiate ( hongbaos [ index ] , points [Random.Range ( 0 , points.Length ) ]. position + new Vector 3 ( Random.Range ( -0.5 f , 0.5 f ) , 0 , 0 ) , Quaternion.identity ) as GameObject; go.transform.Rotate ( new Vector 3 ( 270 , 180 , 0 ) ) ; } else { return ; } } public void PlayScale ( ) { daxiao.gameObject.SetActive ( true ) ; daxiao.PlayForward ( ) ; } } |
Unity -- 用EasyAR制作出AR红包的更多相关文章
- 支付宝AR红包引出Python中的PIL小试
这两天支付宝AR红包火了,周围的同学全在玩.可是我一直在想这个原理是什么?通过请教大神和思考,知道了它有两个限定条件:GPS地理位置和图片的识别.所以,只要我们有了这两个限定条件,就不难进行该红包的破 ...
- 说一说关于破解支付宝AR红包的事
当朋友圈的你们才开始分享支付宝AR红包的消息的时候,我已经对它动了一二三四次歪脑筋了,虽然事实证明并不是那么顺利,至今我也只在电脑前识别出5个不知道在哪里的红包,其中一个还因为定位信息不符开不了. 昨 ...
- EasyAR 开发实例---AR礼物(简单demo)
一个节日礼物效果 --显示模型 在本次的案例中,我使用的是unity5.6.3版本,EasyAR 为2.0.(用1.0的版本,在渲染那块有问题) [导入SDK]到EasyAR官网(http://www ...
- Unity -- 使用easyAR的基础教程
“三人行,必有我师焉”,抱着共同学习进步的态度,和大家一起交流下EasyAR的用法.有不足的地方,欢迎指出!大家都知道,今年的QQ,支付宝,都用到了AR的技术,扫描一张图片,就会出现虚拟模型,及其想要 ...
- Unity+高通Vuforia SDK——AR
一.AR概念: 增强现实(Augmented Reality,简称AR),是在虚拟现实的基础上发展起来的新技术,也被称之为混合现实.是通过计算机系统提供的信息增加用户对现实世界感知的技术,将虚拟的信息 ...
- unity发布ios高通AR的问题
1)缺少引用,无法找到vuforiaBehavior 原因:Windows下的工程,直接考到mac下,导致unity自带插件(2017)有问题 解决:首先在playerSettings-xrSetti ...
- GJM :Unity使用EasyAR实现脱卡功能
首先说下大致思路当卡片离开摄像头时间,ImageTarget-Image的SetActive (false),所以其子物体(model)也就不显示了,因此解决的办法就是在Target (false)时 ...
- Python + PIL 处理支付宝AR红包
思路比较简单:1.对图片进行锐化处理:2.设(r_h, g_h, b_h)为支付宝遮罩黑条的RGB值,以此为中心,查找半径为Diff_radius的范围内所有的色值: 3.对每一行符合步骤2的像素点个 ...
- 基于Unity的AR开发初探:第一个AR应用程序
记得2014年曾经写过一个Unity3D的游戏开发初探系列,收获了很多好评和鼓励,不过自那之后再也没有用过Unity,因为没有相关的需求让我能用到.目前公司有一个App开发的需求,想要融合一下AR到A ...
随机推荐
- linux中的部分宏
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- Leetcode34--->Search for a Range(在排序数组中找出给定值出现的范围)
题目:给定一个排序数组,找出给定的target值出现的范围:算法复杂度要求在O(logn);如果没有找到,则返回[-1, -1]; 举例: For example,Given [5, 7, 7, 8, ...
- Leetcode 454.四数相加II
四数相加II 给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0. 为了使问题简单 ...
- Python开启进程的2中方式
知识点一:进程的理论 进程:正在进行的一个程序或者说一个任务,而负责执行任务的则是CPU 进程运行的的三种状态: 1.运行:(由CPU来执行,越多越好,可提高效率) 2.阻塞:(遇到了IQ,3个里面可 ...
- Thanks for your encourage!
将近三个月的学习,我的努力换回了代表荣誉的小黄衫,这令我很开心啊...我想是不是要写点什么来表达自己的心情呢=,= 于是就有了以下文字ahhhhhh... 学习心得: (1)学习中总会有失败和成功, ...
- Welcome-to-Swift-14构造过程(Initialization)
构造过程是为了使用某个类.结构体或枚举类型的实例而进行的准备过程.这个过程包含了为实例中的每个属性设置初始值和为其执行必要的准备和初始化任务. 构造过程是通过定义构造器(Initializers)来实 ...
- bzoj1566【Noi2009】管道取珠
题意:http://www.lydsy.com/JudgeOnline/problem.php?id=1566 两个栈不断pop,共C(n+m,n)种,ai表示每个相同序列的方案数,求∑(ai^2) ...
- docker 镜像阿里加速器
1.登录 https://cr.console.aliyun.com/#/imageList 2.点击加速器tab,获取自己的加速器地址,然后执行黑框内的命令. .sudo mkdir -p /etc ...
- POJ 2893 M × N Puzzle
逆序对 n 数码问题的扩展 对于一个n * m 的问题来说,结论和 列数 m 奇偶有关 对于 m 是奇数来说 , 两个局面互相可达,当且仅当这两个局面按顺序写成一个数列,这个数列的逆序对数的奇偶性相同 ...
- CSS实现Footer固定底部,超过一屏自动撑开
方法一:给html.body都设置100%的高度,确定body下内容设置min-height有效,然后设置主体部分min-height为100%,此时若没有header.footer则刚好完美占满全屏 ...