Exemple #1
0
 static std::pair<Graph::HalfEdge *, Graph::HalfEdge *> getRandomOpposingEdges(
     Graph::Face &face,
     FRandomStream &random) {
   // Get all the edges in the face.
   std::vector<Graph::HalfEdge *> edges;
   edges.reserve(4u);
   auto &firstEdge = Graph::GetHalfEdge(face);
   auto *edge = &firstEdge;
   do {
     edges.emplace_back(edge);
     edge = &Graph::GetNextInFace(*edge);
   } while (edge != &firstEdge);
   check(edges.size() == 4u);
   auto randomIndex = random.RandRange(0, edges.size() - 1);
   return {edges[randomIndex], edges[(randomIndex + 2u) % edges.size()]};
 }
bool UKismetMathLibrary::RandomBoolFromStream(const FRandomStream& Stream)
{
	return (Stream.RandRange(0,1) == 1) ? true : false;
}
int32 UKismetMathLibrary::RandomIntegerInRangeFromStream(int32 Min, int32 Max, const FRandomStream& Stream)
{
	return Stream.RandRange(Min, Max);
}