算法动画的Unity 3D框架外文翻译资料

 2023-01-29 02:01

英语原文共 7 页,剩余内容已隐藏,支付完成后下载完整资料


毕业设计(论文)

外文资料翻译

说明:

封面之后放英文原文;英文原文之后放译文;译文后空两行,注明英文出处(请按照参考文献的书写要求书写,英文原文不能来自网站)。

原文:

A Unity 3D Framework for Algorithm Animation

Abstract—Since the first algorithm animation interactive computer system called BALSA appeared in 1984, many algorithm animation and visualization applications have been developed for educational purposes. Modern game engines (like Unity 3D and Unreal) possess a multitude of features which are vital for algorithm animation applications. Until now, these features have not been systematically exploited for educational applications. In this paper, we circumvent conventional programming languages (such as Java, C , etc.) and their corresponding toolkits and instead describe our design of an alglorithm animation framework built around Unity 3D and demonstrate its application to the educational realm of graph algorithm animation. This project serves as a proof of concept that modern game engines such as Unity 3D can be used to create modern and effective tools for learning concepts contained in the realm of computer science and engineering.

Keywordsanimation, graph, learning, visualization, Unity 3D

1.INTRODUCTION

For aspiring computer scientists and engineers, developing an understanding of graphs and algorithms is an integral part of the educational process. Establishing a clear understanding of objects and how various algorithms affect those objects is crucial for anyone interested in learning programming or writing computer algorithms. Reading texts and interpreting images of graphs is one way of learning these structures and algorithmic processes; however, it is possible that there may be more effective and engaging ways of teaching these concepts that have not yet been developed.

In 1984, an interactive algorithm-animation system called BALSA was developed [1]. This software was designed for the purpose of teaching concepts relating to graphs and algorithms through the use of viusalization and animation. Since then, many similar implementations have been developed ad-hoc in a wide variety of high-level programming languages (Java, Python, etc.) [2]. Despite the usefulness of these programs in teaching the concepts sought, the platforms upon which they were designed are not exclusively meant for interactive purposes. For example, the Java programming language is an incredibly versatile and robust programming language; however, its associated graphics libraries are far from hardware-optimized, and could be considered mediocre tools (at best) for developing rich and interactive frameworks for animation and visualization.

Modern game engines like Unity 3D [3] and Unreal Engine [4] are incredibly rich and powerful platforms for developing games and interactive experiences. Until now, these engines have not been systematically exploited in creating an interactive and immersive learning experience for these types of algorithmic concepts. The goal of this paper is to outline a framework in which the Unity 3D game engine can be used to the fullest in developing new and modern ways to bring compelling learning experiences to new computer science and engineering students. Additionally, the same type of visualization and animation technology could be utilized by established programmers as a sandbox for determining the effectiveness of varioius algorithms and heuristics for determining a best solution for a target problem.

In section II, we describe Unity 3D game engine, including its main concepts and structures, and we explain why it is used for algorithm animation development. In section III, we outline and explain the design of a Unity 3D framework for algorithm animation. In section IV, we explain how the framework is applied to graph algorithm animation, including demonstration of animation of graph search algorithms (depthfirst, Dijkstra, and A*). Finally, in section V, we discuss conclusions and future work about and beyond algorithm animation using Unity 3D.

2.UNITY 3D

Unity 3D is an incredibly powerful and versatile game and interactive-experience development tool created by Unity Technologies in 2005. It is a truly multimedia engine, offering built-in features such as materials and shaders, rendering, lighting, physics, advanced animations, audio support, video support, and powerful UI-development tools. Unity 3D supports over twenty major platforms (from workstations, mobile devices, game consoles, to web applications) and has advanced graphics support which utilizes and optimizes modern hardware to the fullest extent. Developing a solution in Unity 3D is quick, since the Unity Editor has many powerful convenience tools and its integrated Asset Store with many free or easy-to-purchase plugins for any project. Finally, the Unity Engine takes advantage of the C# programming language, which many computer science newcomers may already be familiar with to some extent.

The Unity 3D game loop consists of a variable-time update and fixed-time update (mainly used for its internal physics engine) followed by draw calls. To account for differences in processor speeds on the deployed machines, it provides a real-time class for developers to adjust updates in real time. As such, animations in Unity 3D can be generated using this class (e.g. moving an object one meter per second would be the same, independent of processor speeds). Different processor speeds only result in varying animation performances (e.g. 30 frames versus 60 frames per second). Any animation designed for Unity 3D must work wit

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[254141],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。