Generating Virtual Guitar Strings Using Scripts

Generating Virtual Guitar Strings Using Scripts

Generating Virtual Guitar Strings Using Scripts Luka Kunic´ and Zeljkaˇ Mihajlovic´ University of Zagreb, Faculty of Electrical Engineering and Computing, Zagreb, Croatia [email protected], [email protected] Abstract—Artists who create 3D models usually rely on the This paper describes a method for automatically generating traditional method of direct mesh manipulation using basic and animating 3D models of musical strings, which will be operations such as translation, rotation, scaling, and extrusion. In used for creating interactive virtual string instruments. Existing some cases, creating a model in this manner requires performing many repetitive and precise actions, which makes a fully manual procedural modeling techniques, briefly covered in Section II, approach suboptimal. This paper explores an alternative concept mostly rely on some form of stochastic behavior in order to of 3D modeling using scripts, which aims to automate parts of achieve the final shape of the generated model. We present the modeling process. a more deterministic approach, in a sense that running the Existing procedural algorithms use scripts to generate ob- algorithm repeatedly with the same set of parameters will jects based on mathematical models (e.g. generating realistic always result in the same model. The primary gain of this terrains using fractals), or to build complex structures using simple template models (model synthesis). Unlike those methods, method is not in the model creation, since the actual mesh which rely on stochastic behavior to generate pseudo-randomized is quite simple, but rather in automatically adding complex shapes, the goal of this method is to write scripts that generate behavior to the model through morphing and animations. parametric objects which would be either difficult or time- Another significant advantage over a manual process is the consuming to model by hand. The example described in this ability to easily generate arrays of objects using various paper is a script that generates animated strings for musical instruments. Although the basic shape of a string is quite simple, parameters. This is quite important for rapid prototyping, animating string vibrations and bending can be quite a tedious where the user iteratively creates variations of the model until task, especially because of the various shapes and sizes of string they are satisfied with the result. Further discussion about the instruments. motivation for this method can be found in Section III. The string generation process, described in detail in Sec- tion IV, includes: creating the string mesh based on a set I. INTRODUCTION of input parameters, adding vertex animations to the mesh in order to simulate string bending, adding and attaching an With the advancements in computer graphics, 3D modeling armature to the mesh, and animating the string vibrations. The has become a major part of many industries. Artists who results are presented in Section V. create 3D models most commonly use dedicated software solutions that include a 3D viewport, which allows them to II. RELATED WORK directly modify the mesh data using basic operations such as translation, rotation, scaling and extrusion. While this The following subsections present several valuable methods traditional method can be used to produce very good results, for automatically generating 3D content: procedural modeling, those results are often difficult to achieve due to large amounts template-based methods and interactive simulations. of manual work required. This is especially true for large-scale environments such as terrains or entire cities used in movie A. Procedural modeling and video game industries, which are practically impossible Procedural techniques are algorithms that are used to deter- to generate manually in a reasonable time frame. However, mine the characteristics of an object or effect [3]. An algorithm many tasks involved in this process can be entirely or at least is implemented as a procedure which contains an abstract partially automated, allowing for a faster and less repetitive representation of the desired features for the output model. workflow. Executing the procedure calculates the features based on input Automating a task can be as simple as creating a custom tool parameters and constraints set by the user and generates a that performs some commonly used or repetitive actions. This finished model which satisfies those constraints. This allows allows users to focus on the creative aspect of modeling instead a high level of control and flexibility. The procedures often of being hindered by the lack of software features. On the other incorporate a form of stochastic behavior in order to introduce hand, scripts can be used to generate complex objects based a level of randomization into the output models. This is useful on a set of parameters and constraints, which can be given by when modeling objects which are represented in nature, so that the user or determined by the choice of the algorithm being the finished product appears more organic and realistic. used. Obviously, these scripts must be tailored to each specific Procedural modeling techniques have been used in computer problem, which brings into question whether the gains of using graphics since the early beginnings of the field. At first, pro- a script justify the time spent on development. However, if cedures were used to generate images and textures resembling a task can be generalized or parametrized, writing a script materials found in nature, as it was found that many natural to perform that task can greatly reduce time spent working shapes follow distinct patterns which could be described by on different areas of the model. Furthermore, variations of mathematical models. A prominent example of such textures algorithms developed for such generic tasks can be used for are fractals, introduced by Mandelbrot in 1982 [7]. Fractals can solving various modeling problems in different domains. be used to create very natural looking objects and structures 264 MIPRO 2017/DC VIS because of their self-similarity property, which is why they are widely used in computer graphics. A different approach to procedural modeling uses formal languages and grammars to describe the output model. One such model was introduced by Lindenmayer who used his L-systems [6] to formally describe the growth of plants. The system consists of an alphabet of symbols and set of production rules, which are used to generate strings of symbols that define a plant. This technique is often used in computer graphics because of its high versatility, and because it can be easily extended with additional functionality [8], [13], [14]. Procedural techniques are also commonly used to create and animate natural volumetric phenomena that cannot realistically be modeled with mesh geometry, such as gasses, clouds or fire [3], [5]. Attributes like color and transparency can be Fig. 1. The result of the terrain synthesis algorithm. On the right is the controlled using procedures that simulate air turbulence and finished terrain which was generated based on the height map of Mount Jackson in Colorado, USA (center left) and a user defined sketch (upper left). noise in the space occupied by the model volume. Similar The combined height map generated by the algorithm is shown in the lower techniques can also be applied to particle systems which left corner. are also guided algorithmically and can be affected by some external influence. interact with natural forces like wind, etc. These types of simu- B. Model synthesis and template-based modeling lations are often used for animating objects in video games and Certain objects cannot entirely be described using math- other virtual environments. Simulations used for animating the ematical models. This applies to most man-made structures objects typically have many parameters and obey certain laws such as buildings or machines that are often found in 3D of physics which require performing complex calculations. environments. For example, when creating a large virtual city, These calculations can either be done in real-time, which often it is important to include enough diversity so that the city sacrifices accuracy for computation performance, or they can does not seem artificial, but at the same time most buildings be precomputed, in which case the calculated simulation will should have similar features so that they visually fit together. not be able to adapt to the surrounding objects in the virtual One of the solutions would be template-based modeling, a set environment during execution. of techniques that take simple objects as input and use the III. MOTIVATION objects’ distinct features to generate various other objects that incorporate those features. Throughout history, music has been a prevalent source One such algorithm named model synthesis is presented of entertainment in our society. Professional musicians have by Merell and Manocha [10]. Their algorithm takes an ob- always been praised for their high technical abilities which ject and uses it as a template to create complex structures. they had developed over years of dedication and daily practice. For a given point in space for the model being generated, Some of those musicians were also engineers, so they started their algorithm looks at the surrounding area of the point using their expertise in both areas to create robotic instruments and calculates the possible geometry samples which can be like self-playing pianos, guitars, and other instruments [2], generated at that point. Their algorithm also takes into account [15], [16]. In the modern era of technology, with continuous various constraints: predetermined dimensions of an object, advancements in the field of computer graphics, it is natural ratios between dimensions, connectivity constraints, and the to explore the possibilities of placing musical instruments into general macroscopic shape and scale of the output model. virtual environments. Furthermore, this algorithm can take multiple objects as input, In order to create a self-playing virtual instrument, the 3D which results in output models with a high degree of variety.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    6 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us