This document discusses level design tools and techniques used for a game prototype called Historica Fantasia. It describes using tools like ProCore Bundle, World Creator, and Archimatix to create terrain geometry and objects. It also covers setting up A* pathfinding with Recast Graph to allow dynamic pathfinding over the terrain and through objects.
Turn based tactical design fundamentals and a handful of tips - takeaway versionKacper Szymczak
As I work on my 3rd Turn-Based Tactical game, I'm sharing my insights into how fundamental design choices affect the gameplay, and sprinkle it with a couple of specific hints how to solve some of the more common design problems.
Balancing is a problem seemingly no one exactly knows how to tackle. Should you calculate it all? Should you tinker with values until you're satisfied with every detail? Should you turn to focus tests? I aim to propose a different approach and treat balance as something inherently systemic. I'm going to talk about structuring systems and content around a balanced framework. I will elaborate on my experience with such an approach in Phantom Doctrine, focusing on solutions we utilized and effective techniques required to master the balancing of a lengthy campaign in a complex game.
Turn based tactical design fundamentals and a handful of tips - takeaway versionKacper Szymczak
As I work on my 3rd Turn-Based Tactical game, I'm sharing my insights into how fundamental design choices affect the gameplay, and sprinkle it with a couple of specific hints how to solve some of the more common design problems.
Balancing is a problem seemingly no one exactly knows how to tackle. Should you calculate it all? Should you tinker with values until you're satisfied with every detail? Should you turn to focus tests? I aim to propose a different approach and treat balance as something inherently systemic. I'm going to talk about structuring systems and content around a balanced framework. I will elaborate on my experience with such an approach in Phantom Doctrine, focusing on solutions we utilized and effective techniques required to master the balancing of a lengthy campaign in a complex game.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofsAlex Pruden
This paper presents Reef, a system for generating publicly verifiable succinct non-interactive zero-knowledge proofs that a committed document matches or does not match a regular expression. We describe applications such as proving the strength of passwords, the provenance of email despite redactions, the validity of oblivious DNS queries, and the existence of mutations in DNA. Reef supports the Perl Compatible Regular Expression syntax, including wildcards, alternation, ranges, capture groups, Kleene star, negations, and lookarounds. Reef introduces a new type of automata, Skipping Alternating Finite Automata (SAFA), that skips irrelevant parts of a document when producing proofs without undermining soundness, and instantiates SAFA with a lookup argument. Our experimental evaluation confirms that Reef can generate proofs for documents with 32M characters; the proofs are small and cheap to verify (under a second).
Paper: https://eprint.iacr.org/2023/1886
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
National Security Agency - NSA mobile device best practices
Historica Fantasia devblog10 Level Design Prototype
1. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 1
By Matumit Sombunjaroen V1.0 2017/12/21
Historica Fantasia Dev Blog
Chapter10:
Level Design Prototype
3. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 3
Tools Used
ProCore Bundle include various tools
that could speed up Level Design
ProBuilder Advance for Geometry
ProGroups for quick Grouping
QuickDecals for Decorative Works
QuickEdit for Editing Meshes in Editor
QuickBrush to populate Prefabs
4. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 4
Tools Used
Archimatix is used mainly for Artificial Objects.
World Creator to create Terrain
//Buy it from the Asset store if you only need Unity Version.
//They won’t refund the standalone version
Unity Terrain has some serious issues with Shaders,
Complete Terrain Shader should solve these issues.
5. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 5
Design Revision
Multiple Areas
Each Average Area is at least 80m in width or length
Max 30Degree for Traversable Slope
10m Height Cut per Major Elevation
Has Destructible Obstacles
Walls need to be at least 5m wide to prevent Overshoot
8. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 8
Overall Map
After going through much consideration,
It is more convenient to build a Large Terrain,
Then form Areas around it
Use Terrain Former by adding its to Terrain
Because Terrain cannot have Negative Height Value,
We are using 0 for Sea or River Bed
And 10 for Ground Floor
9. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 9
Open Field
Use Set Height of 10 to bring everything to Ground Level
Open Field must be surround
by other features that mark its boundary
This is to prevent Units reaching the Edge
and feel weird when finding Empty Ground
10. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 10
High Ground
Max Slope got changed to 45,
Because it’s just easier to design
The Maximum Height for Ground is 30 (20 above Ground)
Slopes need to have clear Cliff Cut
11. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 11
Internal Area
Caves or other Major Interior
Will be surround by the wall that reach the top ground,
Or at least placing a Collider to block visibility from outside
Entry Points will be
either Small Openings or Warp points
13. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 13
Initialize Setup
Call World Creator Window Editor
and press New to create new Terrain
Set overall Sizes accordingly
Height should be 40 by maximum
14. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 14
Blockout Height
Paint Area Mask for Ground Floor,
Add Flatten Terrain Filter
Use Flatten Anchor to push it to appropriate Height
Block out 4 Major Elevation Height
00 – Flatten Anchor 0
10 – Flatten Anchor 0.25
20 – Flatten Anchor 0.5
30 – Flatten Anchor 0.75
30
20
10
30
00
15. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 15
Refine other parts
Paint Area Mask for Mountain and Erosion Filters
Mountain should be use to carve out inaccessible Areas
Adjust accordingly.
Use Path to smooth out Roads to Accessible Areas
16. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 16
Terrain Texture
Put Ground Base Texture at the Bottom,
Then add Cliff Texture,
with minimum Terrain Slope adjusted to override the Slope.
Use Cavity to add Depth & Highlight
Use Terrain Height to add Height Gradient
17. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 17
Customized Shader Forge Shader
Unity Shader use Splatter map
to blend 4 textures together
Name Texture Slots, Control, Splat0, …. Splat3
And the appropriate Textures
will be referenced automatically.
Add shading passes accordingly
21. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 21
Procore QuickBrush
QuickBrush will be activated as long as the Window is up
Drag Prefab to paint
Ctrl+ Left Click
to place object
Settings can be save and reuse
23. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 23
Plan – Movement Tutorial Stage
1. Pickup Warp Item
And use it to warp to nearest Base
(Item usage Mechanic)
(Warp to Base Mechanic)
2. Rendezvous with PathFinder
(Form Squad at Base Mechanic)
(PathFinder increase Movement Range)
0. Impassable Blockade
3. Activate TraWell
(Near Water Warp Locations)
(TraWell Mechanic)
4. Thrown Boulder destroy Bridge
(Siege Weaponry Mechanic)
(Building Destruction Mechanic)
5. Activate Magical Bridge
(Gimmick Activation Mechanic)
6. Defeat BOSS!!!
(Stage Clear Mechanic)
24. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 24
Archimatix Features to note
Programmable Handle
Han_x
Save and Reuse
Modular Variations from a Single Asset
Placeholder Assets are used for now
In Final Production =>
Create Complete Buildings
by adjusting Handle only
25. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 25
Base (Place holding Asset)
Village, Town, Hospital, Castle, etc
Bases represent Key strategic points that each side must take over.
Each Base will provide different Units to recruit.
Each Base must have an adjacent Key Building,
Units will come out of the Building once recruited.
If the Key Building is destroyed, Unit cannot be recruit.
Raise & Lower appropriate Faction Color Flag when conquered.
Base Area will have different sizes.
To claim -> Have at least an Ally Unit && No Enemy Unit in the Area
Building production should be automated by
Adjusting Archimatix Volumetric size handle.
26. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 26
TraWell (Place holding Asset)
TraWell
Should be place directly
above a body of Water.
Platform
should be place underneath
<= Work on this later
Add some kind of FX
To increase visibility later
Customized Archimatix Handles
Radius, Thickness, Height, Water Level
Can be change on the fly
27. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 27
TraWell Platform (Place holding Asset)
Archimatix Shape Control can be created manually
Syntax Ref:
http://www.archimatix.com/manual/archimatix-turtle-script-api
Create Several Shapes &
Boolean Merge to get a final Result
Since they won’t be use in actual Gameplay,
&& they will be Stamped in the end,
It is OK to make complex stuffs.
TraWell can be activated
when the Squad is standing on a central Area
We should make something visual to represent this
28. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 28
TraWell Take2
Create 2 poles and sparkling effects
to link 2 TraWells together
Warp Area
Once the Squad is placed on top,
Squads can warp to linked TraWell
Via Action Command
29. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 29
Bridge
A Bridge is made up of 3 Parts
2 Ends & 1 Middle
For the Prototype,
We will only hide it
The Middle part can be destroyed
with Siege Attacks
30. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 30
Magical Bridge
Magical Bridge can be activate
when a Unit is standing on a Platform
We are using a straight Bridge for now
The Final Product should be a Curve Bridge
31. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 31
Stair Slopes
Final Slope shall be made with Houdini
The Slope should be around
30degree from ground
And must not be greater than 45degree
32. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 32
Buildings & Trees & Obstacles
Final version shall be made with Houdini
Fences, Walls, etc,
They will block line of Sight,
Block Path,
And can be destroy with Siege Attack
33. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 33
Bushes
Final version shall be made with Houdini
A group of Bush is roughly 2m high
And will hide Units when they are inside
They can be burn, and will spread fire to
surrounding area after a turn
Once completely burned,
They will disappear
36. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 36
Issues
Unfortunately, APEX Path has this really big issues with cliffs.
After working around for sometime, I couldn’t fix it.
As such, we decided to drop it for alternative solution.
Because Formation is no longer an issue,
We chose to go with A*Path Finding Project Pro
By Aron Granberg
37. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 37
How to Setup
Add Astar Path component, and add a new Graph
I chose Recast Graph for this
Snap bounds to Scene will automatically set this up to cover the stage
In Layer Mask, Make sure that objects are in appropriate Layers
And Set those Layers to true
39. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 39
Setup Notes
Because Objects such as Buildings, trees, etc
Are destructible
They must be excluded from scan,
Otherwise, the mesh underneath them
will not be generated
Add NavMeshCut to obstacles instead
They will update during Runtime
40. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 40
Dynamic Obstacle - Navmesh Cutting
Add only one Tile Handler Helper
Add Navmesh Cut to an Object
Set the data accordingly
This will cut a hole inside a graph
41. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 41
Dynamic Path - Bridges
Add only one Recast Tile Update Handler
This will coordinate the Updates from various Objects
Add Graph Update Scene to a dynamic path Object
Set Modify Walkability
and call Apply() from another Script
**NOTE**
THIS CANNOT BE USE TO GENERATE NEW GRAPH
ONLY EDITING EXISTING ONE
42. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 42
Dynamic Path - Navmesh Cutting
Add NavmeshCut to Mid Bridges instead.
Rect Size => (1,1,1)
Height => Set to cover entire Object
Use Rotation and Scale => True
Cuts Added Geom => False
Enable/Disable Components to De/activate path
In final ver, replace disable mesh with Mesh animation
43. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 43
Set Tag – Flaming Area
In A* Setting, create Fire Area Tag
In Unit’s Seeker, set Tag Penalty for the Area
Value difference of around 10000 is good
Add the Followings
GraphUpdateScene
<= Set Modify Tag
NavMeshCut
<= Set to isDual
Collider
<= Must be a bit smaller than NavMeshCut
Tag will be modified when GraphUpdateScene is Apply()
44. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 44
Warp Portals
Add Link2 to a Transform,
Then add another Transform to End
<= Turn off Component to deactivate Link
**Link1 will not update in Realtime**
Link the 2 TraWells
**Immediate Jump will not be made**
This has to be done in movement control
45. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 45
Warp Distance Calculation
AstarPath.active.GetNearest(pos);
Will return Node info of that position
Portals are created as PointNode
Check to see if the wayPoint is a PointNode
pathInterpolator.remainingDistance
Included Portal`s vertical distance as well
Calculate distances between Portals,
To get actual distance
46. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 46
Setup Unit
Seeker is the main
PathFinding Component
Add a Custom Component
To control Unit
Funnel Modifier
Will smooth out curves
47. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 47
Programming
Use Seeker.StartPath() to generate Path
use OnPathComplete callback
To get the path once it’s got generated
Vector3 arrays of each waypoints’ Positions
Are stored in path.vectorPath
Use it to program Movement
Set PathInterpolator in OnPathComplete
It contains several Data, such as remaining Distance
48. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 48
Result
In Area with Multiple Floors,
The Seeker will target the nearest floor
from referenced Point
Recast Graph treated
the center of each grid as the waypoint
Funnel Modifier will fix this out
Smooth Modifier can be added on top
to provided smoother curve
49. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 49
RVO Local Avoidance
Add One RVONavMesh & RVOSimulator
These two will do managements of RVO Agents
Use RVOController.SetTarget();
& RVOController.CalculateMovementData();
To obtain desirable Movement Delta
**The Controller does not move the Unit,
A Separate Control code is needed**
Add RVO Controller to Units
50. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 50
Basic Movement Control
Rotate Unit toward moving direction
Add CharacterController to Unit
Apply Gravity to Movement Delta
Use CharacterController.Move()
51. @OtakuEatMama : @HistoricaFantasiaDevBlog : Zenneth@zodiac-alliance.com 51
Fixing Movement Stutter
Each time the Unit did a Repath
It will stutter for a frame
To Fix this issue,
Calculating Delta is separated from Movement
The Unit will continue moving
In the same direction,
While new Delta is being calculated
Waypoint 0 == Unit’s original position
Movement Vector of zero caused the stutter.