可调控近似概率

可调控稳定概率

using System.Collections.Generic;
using UnityEngine;public class RandRate : MonoBehaviour
{void Start(){for (int i = 0; i < 100; i++){//int value = GetRandomRate(new float[5] { 0.2f, 0.3f, 0.4f, 0.05f, 0.05f });int value = GetRateNoRandom();Debug.Log(value);}}// 约等于概率int GetRandomRate(float[] probs){float total = 0;foreach (float elem in probs){total += elem;}float randomPoint = Random.value * total;for (int i = 0; i < probs.Length; i++){if (randomPoint < probs[i]){return i;}else{randomPoint -= probs[i];}}return probs.Length - 1;}// 数组值加起来不一定等于100,但是一般规范100 就行,要求整数int[] NoRandomArr;// 先初始化出来存储起来List<int> RandomList ;void InitRandomListValue(){NoRandomArr = new int[5] {20, 30, 40, 5, 5 };RandomList = new List<int>();for (int i = 0; i < NoRandomArr.Length; i++){for (int j = 0; j < NoRandomArr[i]; j++){RandomList.Add(i);}}}// 稳定概率 例如设置了0的概率是10 ,那么100次一定有10次,不多不少int GetRateNoRandom(){if (RandomList == null ||RandomList.Count == 0) InitRandomListValue();int listIndex = Random.Range(0, RandomList.Count - 1);int listValue = RandomList[listIndex];RandomList.RemoveAt(listIndex);return listValue;}
}

Unity 可调控概率相关推荐

  1. 【Unity开发小技巧】Unity随机概率扩展(概率可调控)

    做了以下两张图有助于理解,如果想调控概率的话直接修改概率数组即可,实战案例:http://t.csdn.cn/P9QKJ 其实在做概率类相关的界面效果的时候,我们真实做法都是在刷新界面前已经把结果获取 ...

  2. [Unity]随机装备属性随机数生成物品概率——随机数组物品概率

    参考资料1, 代码接着参考资料2继续. Test_CubeSpawn.cs脚本中添加一个变量 .../// <summary>/// 物品价值/// </summary>pub ...

  3. adb查看手机cpu使用率_记录一下Unity打包Android在骁龙cpu上概率性卡死的问题

    我们的游戏内测时有部分玩家反应在游戏进行到半路的时候会突然卡死,屏幕抖动,重启游戏后就没有这个问题. 经过统计发现出现卡死的手机全是骁龙cpu的,网上查了很久资料没有找到解决问题的办法,用adb查看到 ...

  4. 修改我的世界服务器怪物爆率,精英生成概率以及部分能力参数设置_我的世界精英怪mod教程如何调控怪物属性和掉落物__单机攻略_跑跑车单机游戏网...

    第 3 页 精英生成概率以及部分能力参数设置 五.精英生成概率以及部分能力参数设置 精英生成的相关项为-- I:eliteRarity= I:infernoRarity= I:ultraRarity= ...

  5. [Unity]随机装备属性随机数生成物品概率

    当类似随机地牢游戏 里面生成 的装备 的属性 各不相同,且数值各不一样,是怎么作到 类似暗黑破坏神 里面的随机装备属性的. 随机生成物品也可以用到. 鉴定武器,新增武器属性的概率 比如拾取了 一把 未 ...

  6. 【笔记】unity逻辑类各种即使方案汇总

    迷雾遮罩: 1.使用war3的地图拼接 2.改变网格范围,传到shader中 寻路: 需要高精度的则不适合用Navmesh 1.https://howtorts.github.io/2014/01/0 ...

  7. unity 继承了 获取_Unity游戏开发——设计模式概述

    0.前言 这一系列的文章其实应该算作几本书和一些资料总结的笔记,是有关设计模式与游戏开发之间的应用.笔者将阅读学习过程中的思考和总结记录下来,也希望能提供给同样在这方面有疑问的朋友一些帮助. 1.设计 ...

  8. <文献阅读>用转移熵通过微阵列的时间序列推断基因调控网络(inferring gene regulatory networks from microarray time series data

    这篇文章是2007的时候发表在IEEE杂志上,并没有收录到PubMed里面.是韩国的学者开发出来的方法.具体来说,通过转移熵计算基因对的因果关系(causal relations), 也就是转移熵的值 ...

  9. 关于Unity中的UGUI优化,你可能遇到这些问题

    一.界面制作 Q1:UGUI里的这个选项 ,应该是ETC2拆分Alpha通道的意思,但是在使用中并没起作用?请问有没有什么拆分的标准和特别要求呢? 据我们所知,alpha split 的功能最初只对 ...

最新文章

  1. php中$_REQUEST、$_POST、$_GET的区别
  2. C++在数字N中找到精确除以N的数字的算法(附完整源码)
  3. 一种抑制undershoot/overshoot锐化算法介绍
  4. 分支限界法实现最优装载c++_分支限界法
  5. 【cJSon】cJSON学习笔记(一)
  6. c语言学习-从键盘上输入100个字符,统计其中字母、每个数字和其它字符的个数及其百分比
  7. 十年生死轮回,看国产手机发展四个阶段
  8. C++ 临时变量的常量性
  9. 就在刚刚,人工智能微专业来啦
  10. pjsip workshop
  11. 【心电信号】基于matlab NLM时间序列心电信号去噪【含Matlab源码 1547期】
  12. ESX中的虚拟机中安装虚拟机的实现
  13. kali linux2019镜像下载,Kali 2019下载_KaLi Linux镜像文件iso下载 2019.1a x86/x64_当载软件站...
  14. 写一个函数days,实现第一题的计算。由主函数将年月日传递给days函数。计算后将日子数传回主函数输出
  15. html中url格式,web地址的URL一般格式为
  16. 【IOI2018】【luoguP4898】 seats 排座位 (线段树)
  17. 【R语言】常用基本函数
  18. 微信小程序播放背景音乐
  19. 三元运算符 php_使用PHP三元运算符
  20. A02-HTML5入门

热门文章

  1. APP开发流程实例讲解-儒释道网络电台八天开发全程-签名发布
  2. MySQL用命令窗口打开
  3. Netty-心跳检测的作用和实现方法
  4. IT实现工作流程自动化的8个步骤
  5. 2022年山东省安全员C证考试题模拟考试题库及在线模拟考试
  6. kindle格式转换,.azw格式转换
  7. “刘畊宏女孩”看过来,宅家神器极米投影仪RS Pro 2让运动更畅快
  8. 计算机办公软件应用中级,计算机办公软件应用中级证
  9. C#----汉字转拼音
  10. MySQL中的关联查询