C#基础(基于unity的运用)

输入和输出:

print(1);

print("23456");//只能在继承MonoBehaviour环境中使用

Debug.Log(1);//在任意环境中可以输出

Debug.LogWarning("")//警告

Debug.LogError(“”);//在日志里面显示 错误


数据类型:

bool 类型常用于判断是否正确。//bool res= 100>78;会返回ture

float 浮点型   float hp2=3,4f;//注意f

char 字符型;

string name ="绝地武士";字符串型


字符串相加:

string str1="aaa";

string str2="bbb";

string strRes=str1+str2;

print(strRes);


循环语句:

if(){}else{}语句;

for()循环,       

    // 遍历数组

      for(int i=0;i<hps.Length;i++)

      {

            print(hps[1]);

      }

switch() case;语句


switch(heroType)

{

    case 0:print();break;

    case 1:print();break;

    defalt;break;

}


while()



数组:

声明数组   法1:类型 [] 数组名={数组值}           //            int [] hps={10,20,10};

                 法二:int[] hps=new int [20];//数组长度为20;使用这种方式会使用默认值0初始化。

                            int [] hps=null;

                            int [] hps={};

                 法三:int [] hps= new int [5]{1 ,2,3,4,5}          //         必须相对应

                               




函数:

Length可以访问到数组长度



方法的定义和调用:

返回值 方法名(参数)

{

    方法体;

}

//void CreateEnemy(Vector3 pos)         比如在start下调用 :  CreateEnemy(new Vector3(1,1,1))

{

        print ("创建敌人");

        print ("设置敌人位置"+pos);

}


枚举类型:

enum RoleType

{

        Mag,

        Solider,

        Wizard

}


//调用

RoleType rt =RoleType.Mag;

rt = RoleType.Solider;


枚举类型的使用:

便于我们运用代码



类的创建,声明和构造:

class是关键字,加类名

如class Enemy{

    string name;

    int hp;

}//类的定义

在start 里面:

          int hp=100;

//利用类声明的变量,可以叫做对象

          Enemy enemy1=new Enemy();//类的声明=类的创建构造对象

Enemy enemy1=new Enemy();

Enemy enemy1=null;

print(enemy1.name);

enemy1.name=" ";//赋值



class Enemy{

    public string name;//public 的字段才可以通过对象访问。

    public int hp;

    public void move ()

{

        Debug.Log(”正在移动”);

}

}


补充:

脚本的基本结构

//

命名空间

定义的类

namespace +名字//定义命名空间


脚本中变量的定义:

访问修饰符:public private



运算符:

数学运算符   + - * /

赋值运算符:= += -= *= /= %=

比较运算符:>      >=       <       <=         ==         !=

逻辑运算符:

&&  //     逻辑“与”

 ||     //    逻辑“或”

!    //    取反



unity 中应用:得到子物体。

 

Transform[] children =transform.getComponentsInChildren<Transform>();//得到所有组件

for(int i=0;i<children.Length;i++)

{

        GameObject.Destroy(children[i].gameObject);

}


Transform[] children =transform.getCompontentsInChildren<Transform>();


int i=0;

while(i<children.length)

{

    if(children[i]!=transform)

    {

         GameObject.Destroy(children[i].gameObject);

    }

   i++;

}


int i=0;

do{

        if(children[i]!=transform)

    {

         GameObject.Destroy(children[i].gameObject);

    }

}

while(I<children.Length)


foreach(Transform t in children)//专门做遍历

{

       if(t!=transform)

{

        Destory(t.gameObject);

}

}


组件的获取:

Transform t= getComponent<Transform>;      //返回值是transform类型的

又例如加了几个碰撞器,则

Collider [] colliders=GetCompontent<Collider>();

foreach(Collier c in colliders){

print(c);

}

print(GetComponment<Player>());

就算被禁用,通过拖拽也可以得到


组件的禁用和激活:

只有带勾的才能禁用。

BoxCollider collider =GetComponent<BoxCollider>();

collider.enable=false;//把enabled设置为false 表示禁用


获取游戏物体的四种方式:

1,直接通过拖拽的方式

public GameObject Camera;

public Camera mainCamera;

2,通过给指定路径:

print(transform.Find("GameObject(1)/GameObject"))

print(transform.Find("GameObject(2)"));


3,直接进行搜索//挨个查找

GameObject mainCameraGo=GameObject.Find(“Main Camera”);

print(maincameraGo);


4,通过标签来查找

给其指定一个标签

GameObject player =GameObject.FindWithTag("标签名称");

print(player);


END


  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Unity3D热力分布图是一种基于图像颜色来表示游戏物体热度分布的技术。它可以将不同游戏物体的热度值在图像上进行热力分布展示,从而帮助开发者更好地了解游戏中物体的使用情况。此外,Unity3D热力分布图还可以帮助开发者优化游戏性能,通过分析图像来找到游戏中的性能瓶颈。 在Unity3D热力分布图中,每个游戏物体都会被分配一个颜色值,颜色值表示该物体的热度值。热度值越高,颜色越接近红色,热度值越低,颜色越接近蓝色。通过颜色的变化,开发者可以直观地了解到游戏中哪些物体最受玩家欢迎,哪些物体的使用率较低。 使用Unity3D热力分布图可以为开发者带来许多优势。首先它可以帮助开发者深入了解游戏中物体的使用情况,以便针对性地进行优化。其次,它可以节省开发者的时间,减少开发过程中的盲猜,从而更加高效地进行游戏性能优化。最后,它可以提高游戏质量和玩家的游戏体验。 综上所述,Unity3D热力分布图是一项非常有用的工具,可以帮助开发者更好地了解游戏中物体的使用情况,并为游戏性能优化提供有力的支持。 ### 回答2: Unity3D热力分布图C#是一种开发工具,旨在提供一个直观的方式来可视化分析Unity3D场景的性能瓶颈。Unity3D是一种跨平台游戏开发引擎,可用于开发游戏,仿真程序,虚拟现实和增强现实程序,等等。Unity3D热力图C#插件可用于分析代码和资源的影响,与CPU、GPU和内存资源的使用情况相关、并帮助开发人员从中优化其程序。它提供了一个实时热力图,可以通过色彩区分出哪些区域和代码或资源受到了最大的压力。这使得Unity3D开发人员能够诊断性能问题的根本原因,并加入适当的修复和调整。 Unity3D热力图C#还提供了附加的功能,例如一个在场景中跟踪物体数量及单个物体中各个组件的性能开销的模块。它也提供了与规则分析器的集成,以便能够通过自动化规则来分析场景中产生的瓶颈。Unity3D热力图C#是一个功能强大的工具,可以帮助Unity3D开发人员优化他们的程序,提高性能,并在设备上实现流畅酣畅的游戏体验。 ### 回答3: Unity 3D是一种非常流行的跨平台游戏引擎,它可以用来创建三维游戏、模拟器和其他交互式内容。Unity 3D具有非常完善的功能,可通过其功能丰富的编辑器和脚本 API 进行高度自定义的开发。其中,热力分布图(Heatmap)是Unity 3D中的一种运用图像表达数据的展示方式。 热力分布图常用于可视化位置和流量数据,通过颜色深浅的变化表现数据的项集中程度。对于游戏开发者而言,热力分布图非常有用。通过对玩家的行为、战斗、场景等数据进行可视化,能够展现游戏玩法的成功与失败之处。利用热力分布图的技术,游戏开发者可以更清楚地认识游戏特性的受欢迎程度和弊端,为后续的升级和改进提供有价值的参考意见。 当然,热力分布图不仅仅只在游戏开发中有用。其他领域如数据分析、推荐系统、商业应用中也有应用。总之,热力分布图只是我们在可视化数据时的一种方法,我们可以根据不同需求应用不同的可视化技术、创新可视化方式,让数据更加直观和易于理解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值