贯石斧是谁的武器?

贯石斧是谁的武器

小飞侠? 小飞侠?
回答
  • 瓦莱希 瓦莱希

    首先,我们来引入一个新的概念—linerenderer。在unity3d中linerenderer被称为线性渲染器。通过这个组件,我们可以做一些比较有创意的东西,比如在游戏中绘制线段、制作激光特效、武器拖尾效果等。那么今天呢,我们是用linerenderer来构造弹弓两边的绳子,这个绳子是具有弹性的,在受力结束后可以恢复到原来的状态。当用户按下鼠标左键并移动鼠标的时候,小球和绳子都将跟着移动,当松开鼠标左键的时候,小球以一定的角度和一定的力发射出去。我们今天着重来讲绳子的实现。首先我们创建一个空的gameobject将坐标值设为原点,命名为ropel。接下来我们通过component->effects->line renderer为添加一个线性渲染器组件.
    using unityengine;using system.collections;public class ball:monobeh**iour {
    鼠标位置
    private vector3 mousepos;左侧linerenderer
    private linerenderer linel;右侧linerenderer
    private linerenderer liner;void start()
    {
    获取linerenderer
    linel=gameobject.find("shootor").transform.findchild("ropel").
    transform.getcomponent();liner=gameobject.find("shootor").transform.findchild("roper").
    transform.getcomponent();}
    void update()
    {
    if(input.getmousebutton(0))
    {
    获取鼠标位置
    mousepos=camera.main.screentoviewportpoint(new vector3(input.mouseposition.x,input.mouseposition.y,-2f));设置小球的位置
    transform.position=mousepos;重新设置linerenderer的位置
    linel.setposition(0,new vector3(mousepos.x,mousepos.y,mousepos.z-0.5f));liner.setposition(0,new vector3(mousepos.x,mousepos.y,mousepos.z-0.5f));}
    if(input.getmousebuttonup(0))
    {
    获取鼠标位置
    mousepos=camera.main.screentoviewportpoint(new vector3(input.mouseposition.x,input.mouseposition.y,-2f));设置小球的位置
    transform.position=mousepos;重新设置linerenderer的位置
    linel.setposition(0,new vector3(mousepos.x,mousepos.y,mousepos.z-0.5f));liner.setposition(0,new vector3(mousepos.x,mousepos.y,mousepos.z-0.5f));计算小球合力方向
    vector3 vec3l=new vector3(-2f-mousepos.x,1.8f-mousepos.y,0f-mousepos.z);vector3 vec3r=new vector3(2f-mousepos.x,1.8f-mousepos.y,0f-mousepos.z);vector3 dir=(vec3l+vec3r).normalized;获取刚体结构
    transform.getcomponent().usegr**ity=true;transform.getcomponent().addforce(dir*10f,forcemode.impulse);恢复linerenderer
    linel.setposition(0,new vector3(0f,1.8f,0f));liner.setposition(0,new vector3(0f,1.8f,0f));}
    }
    }

类似问答
精品推荐

友情链接

友链互换QQ:

谷财 备案编号:蜀ICP备11019336号-3商务合作:235-677-2621

Copyright 2009-2020 Chengdu Sanzilewan Technology Co.,Ltd all rights reserve

抵制不良游戏 拒绝盗版游戏 注意自我保护 谨防受骗上当 适度游戏益脑 沉迷游戏伤身 合理安排时间 享受健康生活