葡京游戏网址Unity + Spine 碰撞检测

前言

遥想一下python+selenium基础,并整治有关知识点,分享给闹需要,在腾飞道路上之朋友.

出于无是当python中敲的代码,有或来缩进等息息相关错误,请自行检查

经过友好于开发的嬉戏过程被发觉发生几种做碰撞检测的不二法门:

 

  1. 只在unity中添加collider
    顿时是太简易的同样种植。在Spine中修好骨骼动画以后导入到unity中,让后spawn
    bone就足以获取在Spine中之骨,然后于得的骨骼上长collider。这种艺术对简易的拍使还可,但是复杂一点不怕不好用了,比如当有同轴需要去丢碰撞,这就召开不至。而且以编制collider的下对复杂多变的bone也很不好写碰撞区。

数据类型

#python中没有数据类型的声明
a = 1 #默认为是 整数
b = 1.00 #默认为是  浮点数
c = "aa" #默认为是 字符串
d = [1,2,3,4,5] #列表,可灵活增删改,内容可变
e = (1,2,3,4,5) #元组,写死的,内容不可变
f = {"name":"Vast","age",18} #字典,1v1对应的关系

2.在Spine中添加专用的撞骨骼
每当Spine中可专门多创有分外的骨骼(attach上平等摆设纯色矩形图片作为冲击区域)用来作碰撞检测用,这样即便可于K动画的时段在各国一样轴缩放这些骨科老调整碰撞局域,如果用骨骼缩放为0那么那么一帧其实就是没撞击局域了。
理所当然这种方法呢发毛病,这样的碰撞区域则会随着骨骼缩放,但是只能用矩形的collider,这样必然没有那么准确。
在意:在召开骨骼的当儿,要顾骨骼的起点要拿走于纯色图片的中心,这样于unity中上加collider的时刻,collider位置才会正确,否则会发生晃动。
3.使用Spine中的bounding box
随即是时下我找到的极端好之撞解决方案。在Spine中好让贴图添加上bounding
box,这个box其实是一个多方形,可以以K动画的当儿影藏,也可随着贴图的骨骼缩放,甚至还好像mesh一样对他的顶峰进行拖拽来调整边框,这种方式非常灵活,精确,在导入到unity后好经bouding
box来自动生成polygon collider。

变量赋值

#变量重新赋值
a = 1
print(a)  #结果为1
a = "abc"
print(a) #结果为abc

#赋值多个变量
a = b = c = 1
print(a,b,c) #结果为1 1 1 
a,b,c = 1,2,3
print(a,b,c)  #结果为1 2 3

#求和
a = [1,2,3,4,5,6,7,8,9]
aa = 0
for i in a:
    aa = aa + i
print(aa) # 结果为45

平头和浮点数

#加减乘除
a = 10
b = 12
print(a+b)
print(a-b)
print(a*b)
print(a/b)

#取余
c = 16
print(c%5)  # 结果 余 1

#浮点数
a = 10.12
b = 2
print(a+b)
print(a-b)
print(a*b)
print(a/b)

字符串str

#字符串操作
a = "hello"
b = "world"
print(a+b)
print(a*3) #字符串只有+和*操作,没有-,/

#字符串切片
a = "hello world"
print(a[1:4])  #从1 到 4之前
print(a[4:])   #从4 到最后
print(a[:4])   #从头 0 到 4之前
print(a[4])    #第4个
print(a[::-1]) #字符串反转
print(a[6:3:-1]) #从第6个开始到第3个之前 反着取


#字符串操作的简单函数
a = "hello"
print(len(a))  #计算字符串长度
a = "aaba"
print(a.count("a")) #在变量a的基础上统计a字符的次数

布尔值bool

#非0为真,0(None,空字符)为假
a = None
b = ""
c = 0
print(bool(a))  #False
print(bool(b))  #False
print(bool(c))  #False

a = 1
b = -1
c = "0"
print(bool(a))  #True
print(bool(b))  #True
print(bool(c))  #True

#判断语句
a = 2
b = 1
print(bool(a>b))  #True
print(bool(b>a))  #False
print(bool(a==b)) #False
#==为等号表达式,=为赋值
print(bool(a!=b)) #True ,!= 为不等于

逻辑运算

#与
a = 1
b = 2

if a>0 and b>0:   #同时满足a>0 和 b>0 时,执行下面的代码
    print(a+b) 

#或
a = 10
b = 20

if a<0 and b>0:   #满足其中一个条件,就可执行下面的代码
    print(a-b)

#非
a = 1   #a为True
if not a:   #not取反   
    print(a)   #条件为假,所以结果为空

列表list

#list的操作,增删改查
l = [1, 4, 7, 2, 5, 8]
l.append(3)  #往list里插入数据
print(l) 
def l[0]  #删除一个数据,对应下标0,数据为1
print(l)
l.remove(3) #删除list里指定的一个值
print(l)
l[1] = 10  #修改list里面对应下标的数据

a = l.pop()  #弹出list最后一个数据,返回值为l[-1]
print(a)
print(l)

#list常用函数
l = [1, 4, 7, 2, 5, 8, 1]
print(len(l))   #统计list长度
l.sort()  #升序排序
l.sort(reverse)  #降序
print(l)
print(l.count(1))  #统计l列表下1出现的次数

#切片参考字符串切片

元组与字典

#元组与列表的区别
#1.元组定义是(),list定义是[]
#2.元组的元素只能读,无法增删改

#字典 key键和value值 一一对应  key是唯一的,无序的
d = {}  #字典
d["name"] = "Vast"
d["age"] = 18
print(d) #输出完整字典
print(d["name"])  #输出name的value
print(d.keys())   #输出所有的键
print(d.values()) #输出所有的值

控制流

#if语句
age = 10
if age > 30:   #如果 age >30 ,执行下面的代码
    print("haha")

#if...else...
age = 10
if age>30:    #如果age>30,执行下面的语句
    print("haha")
else:         #否则就执行下面的语句
    print("hehe")

#if...elif...else...
age = 10
if age>30:    #如果age>30,执行下面的语句
    print("haha")
elif age>20:   #如果age>20,执行下面的语句   
    print("xixi")       
else:         #否则就执行下面的语句
    print("hehe")

for语句

#遍历字符串
a = "hello world"
for i in a:    #挨个去取a的值
    print(i)

#遍历list
a = [1,2,3,4,5,"A","B","C"]
for i in a:
    print(i)

#range()
#range(1,100,2)  起点,终点,步长
a = 0
for i in list(range(10)):
    a = a + i  #简写  s += i
print(a)

#0-100的奇数相加
s = 0
for i in list(range(100)):    
    if i % 2:        
        s += i    
    else:        
        continue
print(s)
#continue是跳出本次循环,继续下一个


#当s大于1000时,如何结束for循环
s = 0
for i in list(range(100)):
    if i % 2:
        s += i
        if s > 1000:
            break   #结束for循环
    else:
        continue     #跳出本次循环,继续下一次

while语句

#1到99的奇数累加,总和大于1000时结束循环?
s = 0
i = 1
while i < 100:
    if i % 2:
        s += i
        if s > 1000:
            break
    i += 1
print(s)

#占位符pass,(不起任何作用,只是占个坑)
s = 0
i = 1
while i < 100:
    if i % 2:
        s += i
    else:
        pass
    i += 1
print(s)

猜猜数字游戏

'''
随机生成一个整数,
如果大于该数提示太大了,
如果小于该数提示太小了
'''

key = 7
while 1:   #非0为真
    guess = input("请输入一个1-20的整数:")
    guess = int(guess)
        if guess > key:
            print("输入的太大了")
        elif guess < key:
            print("输入的太小了")
        elif guess == key:
            print("恭喜猜对了")
                break


#复杂一点的
import random
a = 1
b = 99
key = random.randint(1, 100)  #随机从1-100中取一个整数
while 1:
    guess = int(input("请输入一个整数%d" % a + "到%d:" % b))    
    if guess<key and guess > a:
        a = guess
        print('请输入%d到' % a+"到%d:" % b)
    elif guess>key and guess<b:
        b = guess
        print('请输入%d' % a+"到%d:" % b)
    elif guess <= 1 or guess >= 100:
        print("小伙子,别调皮,请重新输入")
    elif guess == key:
        print('真聪明,猜对了!')
            break

 

 

 

发出得相应视频的心上人可以联系我Q:1186868878,备注来意。