Adım: üç boyutlu canlandırma sistemi
Adım: üç boyutlu canlandırma sistemi
Dosyalar
Tarih
1992
Yazarlar
Erkman, A. Gökhan
Süreli Yayın başlığı
Süreli Yayın ISSN
Cilt Başlığı
Yayınevi
Fen Bilimleri Enstitüsü
Özet
Bilgisayarların canlandırma amaçlı kullanımları çelişen bilgisayar teknolojisine paralel olarak 80' li yıllarda ortaya çıkmıştır. özellikle son yıllarda hızla büyüyen bir canlandırma endüstrisi oluşmuştur. Büyüyen endüstri, canlandırmanın eğlence ve reklam alanları dışında da kullanılmasını saklamıştır. Canlandırma, özellikle çeşitli bilim dallarında (kimya, biyoloji, tıp vb.) gittikçe daha sık kullanılmaktadır. Kulanım ve ihtiyaç ların artması sonucunda pek çok yeni teknik geliştiril miştir. Bu tez çalışmasında bilgisayarlı ve özellikle üç boyutlu canlandırma teknikleri incelenmiş, yapılan araştı rmalardan sonra hem yeterli işleve sahip hem de eldeki imkanlarla gerçeklenmeye uygun canlandırma teknikleri kullanılarak üç boyutlu bir canlandırma sistemi tasarlanmış ve yazılımla gerçeklenmiştir. Tasarlanan canlandırma sistemi Anahtar Kare tekniği üzerine kurulmuş olup Uç boyutlu yüzey modelleme, hareket belirleme ve kontrol desteğini etkileşimli bir arayüz ile sunmaktadır. Sistem, yüzeylerin pozisyonlarına ek olarak orientasyon ve şekil değiştirmelerini de sağlamaktadır. Orientasyonların değişimlerinde ortaya çıkan problemlerin çözümü için İlk olarak 1843 yılında Sir William HAMILTON tarafından kompleks uzay üzerine yaptığı çalışmada ortaya atılan quaternionlar kullanılmıştır.
In the last decade, computers have become sufficiently fast and inexpensive to allow computer animation industry to grow. During this time, some noticeable techniques were developed. The first technique developments used in anima tion were essentially 2D, such as "La Faim " in which the skeleton technique is used. The skeleton technique extended the traditional animation concept of "Key Framing". By using this technique, an animator makes a drawing posed in two or more key positions and a computer generates interpo lated drawings in the frames spanning between them. By contrast, "Luxo Junior", whose software development was realized by Bill Reeves et al. from Pixar in 1986, uses 3D computer animation, in which digital models of objects and backgrounds are described in three dimensional space and are moved using a variety of techniques, such as by simulating the dynamics of each motion. The technique used in this thesis can be classified in the same class with "La Faim". Animation had came to existence before the existence of the very first computer. Traditionally, animations had been done by the animators having the skill of drawing. They had to draw and paint each step of animation. After getting all frames (interpolated frames), they all should be combined to create an animation by using cinema tech niques. Computer animation comes to stage at this point. The animator draws the beginning and the last state of the animation frames and makes computer to create the interpo lated frames. The common thread binding these two animated pieces is not that a computer was used to produce pictures, but that they both succeed as animated shorts because the artists who made them share the same skills that have always distinguished good animators. The computer has allowed them to produce their art in an exciting new form and has opened the door to many other enthusiasts who may have the ideas and ability to breathe life into a charac ter, but lack traditional draughting skills. The technology is advancing extremely fast. Hardware becomes faster and cheaper, and the volume of literature describing new software techniques grows exponentially. In traditional animation, the end product is a series of frames, photographed for each film frame. Reaching to this final step there exits a few internal steps. No matter if it is a 2D or a 3D animation, a miniature world should be created. In this thesis, three dimensional techniques are used. These techniques implicitly include two dimensional modelling. In the following paragraphs, only the three dimensional techniques are explained unless the two dimensional technique is explicitly declared. In order to reach this final step the following steps must be completed: Modelling the objects Defining and controlling the motions of the objects Rendering Modelling the Objects Building models for computers to display is a natural application. By the 1950's vector displays and plotters have been accompanied with them. Any mathematical func tion, defined in three dimensional space, that produces points on a surface can form the basis of the modelling technique. The choice of modelling technique is also important for the further steps of animation. The modelling techniques can be classified under three different classes: Surface Modelling Solid Modelling Generative Processes An object is represented as a surface or a combination of surfaces in surface modelling. Space curves and surface patches are mostly used in this technique. By the way, filing a surface function or a list of points which represents the surface make the filing size smaller than the size of all of 3D model points. Polygon meshes technique can be given as an example to this situation. A surface is defined as an area surrounded by a closed polygon in polygon mesh technique. Instead of filing all of the surface points, it is enough to file the surrounding polygon points. Models are described by the volume of space which they occupy. A solid model has an inside and an outside. Constructive solid geometry is the basis of this technique. Primitive quadric objects, such as sphere, cone, cylinder, cube, etc., come together in order to form complex objects. Addition and subtraction operations are two of the defined functions in this technique. A pipe can be produced by subtracting a cylinder having smaller radius from the other one, which are both coaxial. The generative processes can be applied to both solid and surface modelling. Models are produced by some algorithmic methods. Fractals and particle systems are two recent example to these processes. Another recent example - viii - is the modelling technique developed for three dimensional version of Convay's Life Game- Surface modelling is preferred as a modelling tech nique in this thesis. It is easy to use and it is flexible. There also exists another important reason to prefer this technique î Hardware capabilities. Other techniques need hardware more powerful than PC- AT (80386), especially in the case of animation. Defining and Controlling the Objects The starting point of animation is the simulation of objects exist in the physical world. There are two differ ent ways to define and to control the objects: Simulation Illusion There is not a strict bound between simulation and illusion. The close relationship between these two methods can be seen in the following figure. Illusion ¦*- ->. Simulation Algorithmic Motion (İ Kinematics Keyfreming Parameter Interpolation Rotoscoping Procedural Animation Stochastic Processes Fractals J Simulation Goal-directed Motion Inuerse Kinematics Dynamics Inuerse Dynamics Kinemat icTVM^dTisV^^ __JV. ^Images IX By using these two fundamental techniques, various techniques are developed. The mostly used technique is "Key Frame" technique which resembles the traditional animation. In this technique ^objects are defined by their positions and orientations at a defined and a specific time. The intermediate states of objects are interpolated by computer by taking care of the given time of the motion. Although there are a lot of methods for interpolation, two methods are preferred mostly. The first method that is commonly used (also used in this thesis) is linear interpo lation method. The motion path between the start point and end point is a straight line. The object going through the path has a constant speed. ( Accelerations can not be defined. ) The travelling path is a smooth curve in the second commonly used method. In this more effective method than the first one, a smooth space curve is drawn (comput ed) between the start and the end points. The beginning and the final conditions of the curve are given with respect to the type of the curve in the lineer interpolation technique. For an example, the beginning and final velocities are enough as constraints for a cubic interpolation. Due to the degree of the selected curve function, the instant velocity and instant acceleration can be manipulated which makes movement more realistic. Orientation interpolation is the most important problem in the key frame method computations. As known, rotation is represented by a matrix of 3x3 (4x4 for homogenous transformations) in traditional method. If an orientation is described by consecutive rotations, the resultant orientation matrix has dependent parameters whose dependency degree is the number of the operations. This shows that there exists more than one parameter to interpo late which causes complicated computations. As interpola tion can not be done independently for each parameter, undesired situations will occur. In order to get rid of this problem, quaternions are used in this thesis. Quaternions were defined by Sir William Hamilton, while he had been studying "expansion of complex plane to the tree dimensional space", in 1843. Quaternions can be defined as 4 dimensional vector. Scaler multiplication, multiplication with a constant, addition and all other traditional vector operations were defined for quaternions. The only difference is the effect of imaginary axis in multiplication operation. Multiplica tion operation for quaternions is defined as follows s - X - A quaternion can be defined as follows: q=S+Xi+Yj+Zk= [S, & ] As seen it has a scaler and a vectorial part. Quaternions have a unit length in their orientation representations. A quaternion expression which make vector V rotate 0 degree around the axis ü, and an equation which produce the rotation are shown as follows: g=[s,*n = [cos-|,(sin-|) ül g v g"1 = [0,? +2S(& xV ) +2#x(tfxvf)] Two different rotations can be unified easily by using quaternions. Let vector ^ rotates respectively due to qx and q2. Instead of applying two consecutive operations to the vector, just one operation can be applied. Qz (ffivgsT1) qi1" iq2qx) v(g2gi) -1 As there is no constraint for unification of quater nions, complex rotations ( orientations ) can easily be defined by using just one quaternion. The second method in animation, which is called simulation, aims to simulate objects and events as same as in physical world. Thus, the mathematical movement models must include all of the physical effects such as mass, inertia, force, friction, flexibility, etc.. Because of these details, computation takes lots of time, which makes system used in this thesis not to be feasible. 3D animation techniques are examined and a 3D anima tion software (ADIM) is developed, based on "Key Frame" technique, in this thesis. ADIM, is a 3-D graphics system consists of modelling, motion definition and motion control. Surface modelling technique is used in the modelling step. Surfaces are generated by using surfaces of revolution and sweeping surfaces techniques. In order to nenerate smooth surfaces Bezler curves are. usert. A A en- ers ted xi - surfaces is shown by using a synthetic camera method which enables us to see the surfaces in the different points of view and distances. A transformation of the surface is aimed animation step, while surface moves. In order to this property, a data structure that enables surface defined in groups is realized. It is possible to tr a surface to another one if they are in the same Curves that are used for surface generating are tran into the different curves in shape, having the same of control points. The original and transformed establish a curve group. In a similar manner the s that are generated by applying a specific surface g ing technique establish a surface group. in the handle is to be ansf orm group. stormed number curves urf aces ene rat- Modelling and motion control steps are not directly connected. The only connection exits between these two steps are the files in which surfaces are kept. The software that is developed for modelling uses different types of files for its own computation and for communica tion with motion control system. The files that are used by modelling software for computation are curve and surface files. In each curve file there exists control point of group which is associated to the curve. A surface file consists of a curve group and information for creating surfaces. In communication with motion definition and control software surface files in which surfaces are kept as wire frames are used. The purpose of having communica tion through files and discrete realization of the two main steps is gaining the ability of using surfaces generated by different sources. There are three parameters in a motion definition of a surface which are : position orientation shape Key frame technique is used in animation in this software. Because of having ability of transformation, this software also shows some properties of parametric systems. Key frames are defined in a form of couple which shows the starting and the final orientation, position and shape information of the surface. In the computation of orientation change quaternions are used. User can able to adjust and set the starting and the final orientation of the surface via the user interface. User selects the starting and the final surface by searching the surface files. Positions are defined by means of numerical coordinates. As the current hardware is not capable of real-time animation motion timing is giving with respect to film frames. xii The software is developed on a Intel 80386/387 based computer running under MS-DOS by using Turbo Pascal 5.5. Object oriented technique is used especially in the modelling step in order to produce an extendable software. A modular structure is constructed. It is possible to add new curve types for surfaces generating or to add new interpolation techniques. It is possible to add rendering capability to the system, different techniques can be added in modelling and motion control steps and this software can be modified for workstations for the further steps of this study.
In the last decade, computers have become sufficiently fast and inexpensive to allow computer animation industry to grow. During this time, some noticeable techniques were developed. The first technique developments used in anima tion were essentially 2D, such as "La Faim " in which the skeleton technique is used. The skeleton technique extended the traditional animation concept of "Key Framing". By using this technique, an animator makes a drawing posed in two or more key positions and a computer generates interpo lated drawings in the frames spanning between them. By contrast, "Luxo Junior", whose software development was realized by Bill Reeves et al. from Pixar in 1986, uses 3D computer animation, in which digital models of objects and backgrounds are described in three dimensional space and are moved using a variety of techniques, such as by simulating the dynamics of each motion. The technique used in this thesis can be classified in the same class with "La Faim". Animation had came to existence before the existence of the very first computer. Traditionally, animations had been done by the animators having the skill of drawing. They had to draw and paint each step of animation. After getting all frames (interpolated frames), they all should be combined to create an animation by using cinema tech niques. Computer animation comes to stage at this point. The animator draws the beginning and the last state of the animation frames and makes computer to create the interpo lated frames. The common thread binding these two animated pieces is not that a computer was used to produce pictures, but that they both succeed as animated shorts because the artists who made them share the same skills that have always distinguished good animators. The computer has allowed them to produce their art in an exciting new form and has opened the door to many other enthusiasts who may have the ideas and ability to breathe life into a charac ter, but lack traditional draughting skills. The technology is advancing extremely fast. Hardware becomes faster and cheaper, and the volume of literature describing new software techniques grows exponentially. In traditional animation, the end product is a series of frames, photographed for each film frame. Reaching to this final step there exits a few internal steps. No matter if it is a 2D or a 3D animation, a miniature world should be created. In this thesis, three dimensional techniques are used. These techniques implicitly include two dimensional modelling. In the following paragraphs, only the three dimensional techniques are explained unless the two dimensional technique is explicitly declared. In order to reach this final step the following steps must be completed: Modelling the objects Defining and controlling the motions of the objects Rendering Modelling the Objects Building models for computers to display is a natural application. By the 1950's vector displays and plotters have been accompanied with them. Any mathematical func tion, defined in three dimensional space, that produces points on a surface can form the basis of the modelling technique. The choice of modelling technique is also important for the further steps of animation. The modelling techniques can be classified under three different classes: Surface Modelling Solid Modelling Generative Processes An object is represented as a surface or a combination of surfaces in surface modelling. Space curves and surface patches are mostly used in this technique. By the way, filing a surface function or a list of points which represents the surface make the filing size smaller than the size of all of 3D model points. Polygon meshes technique can be given as an example to this situation. A surface is defined as an area surrounded by a closed polygon in polygon mesh technique. Instead of filing all of the surface points, it is enough to file the surrounding polygon points. Models are described by the volume of space which they occupy. A solid model has an inside and an outside. Constructive solid geometry is the basis of this technique. Primitive quadric objects, such as sphere, cone, cylinder, cube, etc., come together in order to form complex objects. Addition and subtraction operations are two of the defined functions in this technique. A pipe can be produced by subtracting a cylinder having smaller radius from the other one, which are both coaxial. The generative processes can be applied to both solid and surface modelling. Models are produced by some algorithmic methods. Fractals and particle systems are two recent example to these processes. Another recent example - viii - is the modelling technique developed for three dimensional version of Convay's Life Game- Surface modelling is preferred as a modelling tech nique in this thesis. It is easy to use and it is flexible. There also exists another important reason to prefer this technique î Hardware capabilities. Other techniques need hardware more powerful than PC- AT (80386), especially in the case of animation. Defining and Controlling the Objects The starting point of animation is the simulation of objects exist in the physical world. There are two differ ent ways to define and to control the objects: Simulation Illusion There is not a strict bound between simulation and illusion. The close relationship between these two methods can be seen in the following figure. Illusion ¦*- ->. Simulation Algorithmic Motion (İ Kinematics Keyfreming Parameter Interpolation Rotoscoping Procedural Animation Stochastic Processes Fractals J Simulation Goal-directed Motion Inuerse Kinematics Dynamics Inuerse Dynamics Kinemat icTVM^dTisV^^ __JV. ^Images IX By using these two fundamental techniques, various techniques are developed. The mostly used technique is "Key Frame" technique which resembles the traditional animation. In this technique ^objects are defined by their positions and orientations at a defined and a specific time. The intermediate states of objects are interpolated by computer by taking care of the given time of the motion. Although there are a lot of methods for interpolation, two methods are preferred mostly. The first method that is commonly used (also used in this thesis) is linear interpo lation method. The motion path between the start point and end point is a straight line. The object going through the path has a constant speed. ( Accelerations can not be defined. ) The travelling path is a smooth curve in the second commonly used method. In this more effective method than the first one, a smooth space curve is drawn (comput ed) between the start and the end points. The beginning and the final conditions of the curve are given with respect to the type of the curve in the lineer interpolation technique. For an example, the beginning and final velocities are enough as constraints for a cubic interpolation. Due to the degree of the selected curve function, the instant velocity and instant acceleration can be manipulated which makes movement more realistic. Orientation interpolation is the most important problem in the key frame method computations. As known, rotation is represented by a matrix of 3x3 (4x4 for homogenous transformations) in traditional method. If an orientation is described by consecutive rotations, the resultant orientation matrix has dependent parameters whose dependency degree is the number of the operations. This shows that there exists more than one parameter to interpo late which causes complicated computations. As interpola tion can not be done independently for each parameter, undesired situations will occur. In order to get rid of this problem, quaternions are used in this thesis. Quaternions were defined by Sir William Hamilton, while he had been studying "expansion of complex plane to the tree dimensional space", in 1843. Quaternions can be defined as 4 dimensional vector. Scaler multiplication, multiplication with a constant, addition and all other traditional vector operations were defined for quaternions. The only difference is the effect of imaginary axis in multiplication operation. Multiplica tion operation for quaternions is defined as follows s - X - A quaternion can be defined as follows: q=S+Xi+Yj+Zk= [S, & ] As seen it has a scaler and a vectorial part. Quaternions have a unit length in their orientation representations. A quaternion expression which make vector V rotate 0 degree around the axis ü, and an equation which produce the rotation are shown as follows: g=[s,*n = [cos-|,(sin-|) ül g v g"1 = [0,? +2S(& xV ) +2#x(tfxvf)] Two different rotations can be unified easily by using quaternions. Let vector ^ rotates respectively due to qx and q2. Instead of applying two consecutive operations to the vector, just one operation can be applied. Qz (ffivgsT1) qi1" iq2qx) v(g2gi) -1 As there is no constraint for unification of quater nions, complex rotations ( orientations ) can easily be defined by using just one quaternion. The second method in animation, which is called simulation, aims to simulate objects and events as same as in physical world. Thus, the mathematical movement models must include all of the physical effects such as mass, inertia, force, friction, flexibility, etc.. Because of these details, computation takes lots of time, which makes system used in this thesis not to be feasible. 3D animation techniques are examined and a 3D anima tion software (ADIM) is developed, based on "Key Frame" technique, in this thesis. ADIM, is a 3-D graphics system consists of modelling, motion definition and motion control. Surface modelling technique is used in the modelling step. Surfaces are generated by using surfaces of revolution and sweeping surfaces techniques. In order to nenerate smooth surfaces Bezler curves are. usert. A A en- ers ted xi - surfaces is shown by using a synthetic camera method which enables us to see the surfaces in the different points of view and distances. A transformation of the surface is aimed animation step, while surface moves. In order to this property, a data structure that enables surface defined in groups is realized. It is possible to tr a surface to another one if they are in the same Curves that are used for surface generating are tran into the different curves in shape, having the same of control points. The original and transformed establish a curve group. In a similar manner the s that are generated by applying a specific surface g ing technique establish a surface group. in the handle is to be ansf orm group. stormed number curves urf aces ene rat- Modelling and motion control steps are not directly connected. The only connection exits between these two steps are the files in which surfaces are kept. The software that is developed for modelling uses different types of files for its own computation and for communica tion with motion control system. The files that are used by modelling software for computation are curve and surface files. In each curve file there exists control point of group which is associated to the curve. A surface file consists of a curve group and information for creating surfaces. In communication with motion definition and control software surface files in which surfaces are kept as wire frames are used. The purpose of having communica tion through files and discrete realization of the two main steps is gaining the ability of using surfaces generated by different sources. There are three parameters in a motion definition of a surface which are : position orientation shape Key frame technique is used in animation in this software. Because of having ability of transformation, this software also shows some properties of parametric systems. Key frames are defined in a form of couple which shows the starting and the final orientation, position and shape information of the surface. In the computation of orientation change quaternions are used. User can able to adjust and set the starting and the final orientation of the surface via the user interface. User selects the starting and the final surface by searching the surface files. Positions are defined by means of numerical coordinates. As the current hardware is not capable of real-time animation motion timing is giving with respect to film frames. xii The software is developed on a Intel 80386/387 based computer running under MS-DOS by using Turbo Pascal 5.5. Object oriented technique is used especially in the modelling step in order to produce an extendable software. A modular structure is constructed. It is possible to add new curve types for surfaces generating or to add new interpolation techniques. It is possible to add rendering capability to the system, different techniques can be added in modelling and motion control steps and this software can be modified for workstations for the further steps of this study.
Açıklama
Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 1992
Anahtar kelimeler
Bilgisayarlı canlandırma sistemi,
Canlandırma teknikleri,
Üç boyutlu canlandırma sistemi,
Computed animation system,
Animation techniques,
Three dimensional animation system