コード例 #1
0
    void move()
    {
        float[] inputVec = new float[PlayerNeuralNet.inputNodes];

        inputVec[0] = (target.x - bodyTrans.localPosition.x) / 30;
        inputVec[1] = (target.z - bodyTrans.localPosition.z) / 30;

        inputVec[2] = targetVel.x / 10;
        inputVec[3] = targetVel.z / 10;
        inputVec[4] = bodyRb.velocity.x / 10;
        inputVec[5] = bodyRb.velocity.z / 10;

        float[] outputArr = PlayerNeuralNet.NeuralNetwork(inputVec);
        //Vector3 force = new Vector3(putInBetween(-MaxForce, MaxForce, outputArr[0]), 0, putInBetween(-MaxForce, MaxForce, outputArr[1]));
        //bodyRb.AddRelativeForce(force);

        bodyRb.AddRelativeForce(Normalize(outputArr[0], outputArr[1]));
        //appliedForce = Normalize(outputArr[0], outputArr[1]);
        //Debug.Log(Normalize(outputArr[0], outputArr[1]));
    }
コード例 #2
0
ファイル: TeamEvolver.cs プロジェクト: 10Kaiser10/football-ai
 private void Start()
 {
     PlayerNeuralNet.load();
     timer = 0;
     Begin();
 }