October 4, 2024
Meta Connect 2024: Major Innovations in AR, VR, and AI

Meta Connect 2024 explored new horizons in the domains of augmented reality, virtual reality, and artificial intelligence. From affordable mixed reality headsets to next-generation AI-integrated devices, let’s take a look at the salient features

September 2, 2024
How to Use Artificial Intelligence in Creating Content for RPG Games

Introduction The World of Artificial Intelligence (AI) and Its Application in Content Creation for RPG Games Recently, the world of IT technology has been actively filled with various iterations of artificial intelligence. From advanced chatbots that provide technical support to complex algorithms aiding doctors in disease diagnosis, AI’s presence is increasingly felt. In a few years, it might be hard to imagine our daily activities without artificial intelligence, especially in the IT sector. Let’s focus on generative artificial intelligence, such as TensorFlow, PyTorch, and others, which have long held an important place in software development. However, special attention should be given to the application of AI in the video game industry. We see AI being used from voice generation to real-time responses. Admittedly, this area is not yet so developed as to be widely implemented in commercially available games. But the main emphasis I want to make is on the creation and enhancement of game content using AI. In my opinion, this is the most promising and useful direction for game developers. The Lack of Resources in Creating Large and Ambitious RPG Games and How AI Can Be a Solution In the world of indie game development, a field with which I am closely familiar, the scarcity of resources, especially time and money, is always a foremost challenge. While artificial intelligence (AI) cannot yet generate money or add extra hours to the day (heh-heh), it can be the key to effectively addressing some of these issues. Realism here is crucial. We understand that AI cannot write an engaging story or develop unique gameplay mechanics – these aspects remain the domain of humans (yes, game designers and other creators can breathe easy for now). However, where AI can truly excel is in generating various items, enhancing ideas, writing coherent texts, correcting errors, and similar tasks. With such capabilities, AI can significantly boost the productivity of each member of an indie team, freeing up time for more creative and unique tasks, from content generation to quest structuring. What is Artificial Intelligence and How Can it be Used in Game Development For effective use of AI in game development, a deep understanding of its working principles is essential. Artificial intelligence is primarily based on complex mathematical models and algorithms that enable machines to learn, analyze data, and make decisions based on this data. This could be machine learning, where algorithms learn from data over time becoming more accurate and efficient, or deep learning, which uses neural networks to mimic the human brain. Let’s examine the main types of AI Narrative AI (OpenAI ChatGPT, Google BERT): Capable of generating stories, dialogues, and scripts. Suitable for creating the foundations of the game world and dialogues. Analytical AI (IBM Watson, Palantir Technologies): Focuses on data collection and analysis. Used for optimizing game processes and balance. Creative AI (Adobe Photoshop’s Neural Filters, Runway ML): Able to create visual content such as textures, character models, and environments. Generative AI (OpenAI DALL-E, GPT-3 and GPT-4 from OpenAI): Ideal for generating unique names, item descriptions, quest variability, and other content. By understanding the strengths and weaknesses of each type of AI, developers can use them more effectively in their work. For example, using AI to generate original stories or quests can be challenging, but using it for correcting grammatical errors or generating unique names and item descriptions is more realistic and beneficial. This allows content creators to focus on more creative aspects of development, optimizing their time and resources. An Overview of the Characteristics of Large Fantasy RPG Games and Their Content Requirements In large fantasy RPG games, not only gameplay and concept play a pivotal role, but also the richness and variability of content – spells, quests, items, etc. This diversity encourages players to immerse themselves in the game world, sometimes spending hundreds of hours exploring every nook and cranny. The quantity of this content is important, but so is its quality. Imagine, we offer the player a relic named “Great Heart” with over 100 attribute variations – that’s one approach. But if we offer 100 different relics, each with a unique name and 3-4 variations in description, the player’s experience is significantly different. In AAA projects, the quality of content is usually high, with hundreds of thousands of hours invested in creating items, stories, and worlds. However, in the indie sector, the situation is different: there’s a limited number of items, less variability – unless we talk about roguelikes, where world and item generation are used. A typical feature of roguelikes is the randomization of item attributes. However, they rarely offer unique generation of names or descriptions; if they do, it’s more about applying formulas and substitution rules, rather than AI. This opens new possibilities for the use of artificial intelligence – not just as a means of generating random attributes, but also in creating deep, unique stories, characters, and worlds, adding a new dimension to games. Integrating AI for Item Generation: How AI Can Assist in Creating Unique Items (Clothing, Weapons, Consumables). One of the practical examples of using AI is creating variations based on existing criteria. Why do I consider this the best way to utilize AI? Firstly, having written the story of your game world, we can set limits for the AI, providing clear input and output data. This ensures a 100% predictable outcome from AI. Let’s examine this more closely. When talking about the world’s story, I mean a few pages that describe the world, its nature, and rules. It could be fantasy, sci-fi, with examples of names, unique terminology, or characteristic features that help AI understand the mood and specifics of the world. Here is an excerpt from the text I wrote for my game world. The Kingdom of Arteria is an ancient and mysterious realm, shrouded in secrets and imbued with a powerful form of dark magic. For centuries, it has been ruled by Arteon the First, a wise and just monarch whose benevolence has brought peace and prosperity to his…

VisionPro_Apple
June 14, 2023
VisionPro on the Horizon: Why MR App Development Doesn’t Sleep

Imagine you’re standing at the threshold of Apple’s new XR headset release, eyes keenly following the stock market reactions and your inbox buzzing with LinkedIn updates about Unity’s burgeoning open positions. The anticipation is almost tangible – it’s like the tech industry’s equivalent of awaiting the final season of a blockbuster TV series. But alas, the actual release isn’t due until next year. Does this mean we press pause on developments? Absolutely not! You might wonder, “Why not take a breather?” The reason is straightforward: MR (Mixed Reality) app development waits for no one. If the groundwork is laid properly now, adapting our apps for the VisionPro release later will be as easy as swapping out smartphone cases. The secret weapon here is experience with the Unity engine. Companies fluent in this technology will navigate VisionPro development with an ease and agility akin to a seasoned marathon runner approaching the home stretch. Having experience with ARKit? That’s a bonus akin to having an extra energy gel in that marathon. And there’s more! Early access to VisionOS SDK is like getting the keys to a treasure chest. It offers an exclusive chance to study, tinker, and try out the first elements of emulation. It’s an opportunity to dive in and get your hands on the technology of tomorrow, today. Previous encounters with MR devices like Magic Leap, HTC Vive, Pico 4, and HoloLens 2 also offer invaluable insights. These devices, with their distinct programming languages, offer lessons in MR app development that are as comprehensive as they are diverse. They serve as a practical guide to the symphony of MR tech. When it comes to eye-tracking, gesture control, and voice control, it’s like we’re in a familiar neighborhood. Experience from working on platforms like Meta Oculus and HoloLens 2 instills confidence, despite the anticipation of some subtle differences with the upcoming VisionPro. However, the fundamentals will likely stay the same. So, to all XR enthusiasts out there, keep those VR goggles firmly in place and maintain the momentum of your MR app developments. While Apple’s new XR headset is an enticing frontier, there’s a lot to be accomplished in the meantime. And when VisionPro does eventually launch, you’ll be primed to embrace it with open arms and innovative apps. Image: Apple

How Game Developers Can Utilize ChatGPT in Practical Ways
April 20, 2023
From Idea to Implementation: How Game Developers Can Utilize ChatGPT in Practical Ways

Brief overview of ChatGPT and its potential uses in game development ChatGPT (Generative Pre-trained Transformer) is an artificial intelligence language model that has been pre-trained on a massive amount of text data. It is capable of generating human-like language and can be used for a variety of natural language processing tasks, including text completion, summarization, and translation. In game development, ChatGPT can be a valuable tool for generating code and providing suggestions or prompts for developers. By inputting a description of a desired game feature or behavior, ChatGPT can generate code that can help developers save time and improve the quality of their work. For example, ChatGPT could be used to generate code for complex AI behaviors, physics simulations, or other game mechanics. It can also be used to suggest improvements or optimizations to existing code. While ChatGPT is not a replacement for skilled game developers, it can be a valuable tool to help streamline the development process and allow developers to focus on the creative aspects of game development. As AI and machine learning continue to advance, it’s likely that ChatGPT and other similar tools will become increasingly important in game development and other fields. Introduction to the specific task of creating floating stones that change speed based on the player’s distance In an existing game, I was tasked with implementing a group of floating stones that would change behavior as the player moved closer to them. In their idle state, the stones should float smoothly and slowly, but as the player approaches, they should start to jitter more and more. This required creating a class, implementing dependencies, and other code that couldn’t be achieved through animator controllers or libraries. While this wasn’t a “nightmare” level task, it was still time-consuming. ChatGPT proved to be a useful tool for generating code snippets and saving time in the development process. Explanation of how ChatGPT can be used to generate code for game development tasks When working with ChatGPT, it’s important to start with the right context. In my case, I began with a promo message about the technology I planned to use. It’s important to keep in mind that ChatGPT is just a tool and won’t generate ideas or code on its own. You need to provide clear and detailed input for the best results. That said, ChatGPT can be a real-time-saver. When using the tool, it’s essential to provide a detailed description of what you’re trying to achieve. The more information you provide, the better the output will be. It’s important to note that using ChatGPT should take less time than achieving the same result without it. So, don’t be afraid to put in the effort to provide a detailed description. With ChatGPT, you can streamline your development process and focus on other aspects of your project. Example prompts and code snippets used to generate the necessary code for this task Let’s dive into the practical use of ChatGPT. As I mentioned earlier, I started by providing context about my game engine and coding language. I want to ask you to help us create some code for my game based on Unity SDK, C# code language. ChatGPT responded kindly, and I moved on to the next step — providing a detailed description of the task and its conditions. A few words about the context of the task. In the game, players can find floating stones. These stones have random directions of jittering, but this jittering is very smooth. If the player appears within around 10 meters of the stone, the jittering speed becomes faster and the speed depends on the player’s distance to the stone (more if closer). As a result, ChatGPT provided me with a basic realization of the class I needed to implement. While the code wasn’t perfect, it covered around 80% of what I needed to do. using UnityEngine; public class FloatingStone : MonoBehaviour { public float maxSpeed = 1f; public float minDistance = 10f; private Vector3 initialPosition; private float initialSpeed; private bool isPlayerNearby; private void Start() { initialPosition = transform.position; initialSpeed = Random.Range(0.2f, 0.5f); } private void Update() { float speed = isPlayerNearby ? CalculateJitteringSpeed() : initialSpeed; transform.position = initialPosition + new Vector3( Mathf.PerlinNoise(Time.time * speed, 0) – 0.5f, Mathf.PerlinNoise(0, Time.time * speed) – 0.5f, Mathf.PerlinNoise(Time.time * speed, Time.time * speed) – 0.5f ); } private float CalculateJitteringSpeed() { float distanceToPlayer = Vector3.Distance(transform.position, PlayerController.instance.transform.position); float speed = Mathf.Lerp(initialSpeed, maxSpeed, (minDistance – distanceToPlayer) / minDistance); return Mathf.Clamp(speed, initialSpeed, maxSpeed); } private void OnTriggerEnter(Collider other) { if (other.CompareTag("Player")) { isPlayerNearby = true; } } private void OnTriggerExit(Collider other) { if (other.CompareTag("Player")) { isPlayerNearby = false; } } } Next, I made some corrections — I added context about using Zenject for player injection and refactored the class to align with project conventions. I then asked ChatGPT to use my updated code version and add jittering rotation to the object based on the same conditions. After this step, I received the final version of the code that I could use in my project. I made some minor changes on my end, and in the last step, I asked ChatGPT to add XML comments to the final class and received the desired result. The final result of the code public class FloatingStone : MonoBehaviour { [SerializeField] private SpeedSettings speedSettings; [SerializeField] private float minDistance = 10f; [SerializeField] private float amplitude = 0.5f; [SerializeField] private float rotationAmplitude = 1f; [SerializeField] private new SphereCollider collider; private Vector3 initialPosition; private Quaternion initialRotation; private float initialSpeed; private bool isPlayerNearby; private Transform player; [Inject] private void Constructor(IPlayer player) { this.player = player.Transform; } private void Awake() { initialPosition = transform.position; initialRotation = transform.rotation; initialSpeed = speedSettings.GetRandomSpeed(); collider.radius = minDistance; } private void Update() { float speed = isPlayerNearby ? CalculateJitteringSpeed() : initialSpeed; Vector3 newPosition = initialPosition + new Vector3( Mathf.PerlinNoise(Time.time * speed, 0) – amplitude, Mathf.PerlinNoise(0, Time.time * speed) – amplitude, Mathf.PerlinNoise(Time.time * speed, Time.time * speed) – amplitude ); Quaternion newRotation = initialRotation * Quaternion.Euler( Mathf.PerlinNoise(Time.time * speed, 0) * rotationAmplitude – rotationAmplitude…

Colorblind-friendly Solutions For Creating Visual Content
January 25, 2023
Colorblind-friendly Solutions For Creating Visual Content

According to National Eye Institute, in average, every twelfth person in the world has one of types of color blindness. So, there are, at least, 300 million people who live with this deviation.  When you should convey some information, using, for example, colored charts, it can become a problem. Visual content simplifies the perception of information, but, in this case, you may not do colorblind people a favor.  In our article, we selected five other article, that can tell you about the key moments you should consider when creating visual content for people with color blindness. What Is Color Blindness According to Wikipedia, color blindness or color vision deficiency is congential or acquired decreased ability to see some colors or differences in color. People with color blindness have difficulties to recognize the color on traffic lights, puzzles, color-oriented games etc.  There are two types of color blindness:  Partial — when human eye can’t see certain colors. There are most popular types of partial color blindness: protanopia (warped perception of red shades), deuteranopia (human eye can’t see green shades), and tritanopia (warper perception of blue and violet shades). According to Ali Levine, the author of True Colors: Optimizing Charts for Readers with Color Vision Deficiencies article, if a person can’t see, for example, red color, it influences other colors too. “A common misconception among those who are not colorblind is that if someone has red/green color blindness, they only have trouble with the colors red and green. However, these deficiencies can easily affect other colors as well; for instance, maroon and brown can look identical to people with red/green color deficiencies… after all, maroon is just brown with a touch of red. In other words, it is not just the colors red and green themselves, but also those colors within other colors,” wrote Levine.  Full — when human eye can’t see colors at all and perceives the world around monochrome. Basically, a person with deviation like this sees the world as a black-white movie.  How You Can Visualize Data For Colorblind People Here, you can read five interesting articles about the most effective solutions for colorblind-friendly visual content: The Best Charts For Colorblind Viewers This is the article by Ivan Kilin, Visual Data Specialist, that contains detailed information about, how colorblind people see and what color palettes are the most suitable for them. Also, the material  has a lot of examples of colorblind-friendly charts and palettes. The source: https://www.datylon.com/blog/data-visualization-for-colorblind-readers True Colors: Optimizing Charts for Readers with Color Vision Deficiencies Clear and interesting aforementioned article by Ali Levine. The author writes about color blindness and describes effective ways to create data visualizations for colorblind people. Also, Levine mentions special apps and simulators that recreate the vision of people with color blindness. Coblis is the one of examples of these simulators, and you can find the link to the program in the article itself. The source: https://itstraining.wichita.edu/optimize_for_vision_deficiencies/ How to Use Color Blind Friendly Palettes to Make Your Charts Accessible The article by Rachel Gravit describes the ways to make your visual content more inclusive. You can thus make your pie chart more understandable for colorblind people using bright contrasting colors, monochromatic color palette or different ornaments to highlight segments of pie chart.  The source: https://venngage.com/blog/color-blind-friendly-palette/#5 Why Your Data Visualizations Should Be Colorblind-friendly The article by developer Leoni Monigatti tells about the matter of color and the way every person sees colors, depending on type of color blindness. This article in not about pie charts only, there’s some useful information about any other types of data visualization.  The source: https://towardsdatascience.com/is-your-color-palette-stopping-you-from-reaching-your-goals-bf3b32d2ac49 Contrast and Color It’s the article by Maureen A. Duffy from Vision Aware, an online media for those who have vision deviations. The author briefly describes the principles of making right color decisions in design. Duffy recommends paying attention to bright and contrasting colors, because they are suitable for people with color blindness. Colors like blue, yellow, violet, and green are hard to see for colorblind people.  The source: https://visionaware.org/everyday-living/home-modification/contrast-and-color/    We hope this article was useful for you. The approaches to creating colorblind-friendly visuals will make your visual data more inclusive and understandable for customers and colleagues that can’t see and distinguish some colors. 

Edutainment – A New Way of Learning
June 13, 2019
Edutainment – A New Way of Learning

Edutainment not only provides a substantial platform for improving learning efficiency, but it also encourages the participants by providing a variety of learning environments for them to choose from.

Why Smart Contracts Are Important for FinTech Startups
February 20, 2019
Why Smart Contracts Are Important for FinTech Startups

One of the best solutions for the business environment.

Wealth Management – How Technology Helps with Finance
February 4, 2019
Wealth Management – How Technology Helps with Finance

Integrated financial solutions offer a variety of mechanisms to grow a financial portfolio.

Best Event Management Apps
December 3, 2018
Best Event Management Apps

A short list of event management apps which you should not miss.

Most Interesting Fintech Startups in 2018
October 18, 2018
Most Interesting FinTech Startups in 2018

The rise of Fintech financial technologies has enabled people to pay for goods, acquire loans and manage their retirement benefits.