I found the cause of a player character jump by unstable velocity.
It is a little interesting noticed.
This is fixed code.
The player character jumps with caluclated vecter.
// By this way, the entity jump vecVertical's vertical velocity.
if(this.onGroundFlag){
var vecVertical = this.chargedEnergy * Player.JumpConficient;
var linerVec = this.entity.rigidbody.linearVelocity.clone();
linerVec.y = vecVertical;
this.entity.rigidbody.linearVelocity = linerVec;
}
This is previous code.
The player character jumps with unstable vecter.
// By this way, the entity don't jump vecVertical's vertical velocity.
// Immediately after the entity got off the ground to jump, it holds the direction of gravity vector.
if(this.onGroundFlag){
var vecVertical = this.chargedEnergy * Player.JumpConficient;
this.entity.rigidbody.applyImpulse(0, vecVertical, 0, 0, 0, 0);
}