Oyun karakteri üretimi için üretken modeller
Generative models for game character generation
- Tez No: 807231
- Danışmanlar: DOÇ. DR. İLKAY ÖKSÜZ
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Bilim ve Teknoloji, Computer Engineering and Computer Science and Control, Science and Technology
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2023
- Dil: İngilizce
- Üniversite: İstanbul Teknik Üniversitesi
- Enstitü: Lisansüstü Eğitim Enstitüsü
- Ana Bilim Dalı: Oyun ve Etkileşim Teknolojileri Ana Bilim Dalı
- Bilim Dalı: Oyun ve Etkileşim Teknolojileri Bilim Dalı
- Sayfa Sayısı: 86
Özet
Oyunlar için görsel içerik ve karakter tasarımı, genellikle zaman alan bir süreçtir ve tasarımcılar tarafından gerçekleştirilir. Tasarım süreci, küçük işletmeler ve bağımsız geliştiriciler için hem maliyetli hem de zaman alıcı olabilir. Bu alanda çalışmak, detaylı bir görsel estetik anlayışı, yaratıcılık ve teknik beceriler gerektirir. Oyunlarda kullanılacak olan karakterlerin ve görsel içeriğin, oyunun hikayesi, atmosferi ve oynanışıyla uyumlu olması önemlidir. Tasarımcılar ve çizerler, bu gereksinimleri göz önünde bulundurarak, oyunun amaçlarına ve hedef kitlesine uygun, özgün görsel içerik ve karakterlerin yaratılması için çalışırlar. Bu nedenlerden dolayı oyunlar için içerik oluşturma zorlu bir süreçtir. Tasarım sürecinin otomatikleştirilmesi, zamandan ve bütçeden tasarruf sağlamaya yardımcı olmaktadır. Prosedüral yöntemler, birçok oyun şirketi ve geliştirici tarafından tasarım sürecini otomatikleştirmek amacıyla sıklıkla kullanılır. Prosedürel içerik oluşturma, algoritmalar ve kurallar kullanılarak oyun içeriğinin otomatik şekilde oluşturulmasıdır. Bu yaklaşım tekrar eden içeriklerin üretilmesinde büyük avantajlar sağlar. Geliştiricilerin ve tasarımcıların daha hızlı içerik oluşturmasına olanak tanır. Bu algoritmaların ürettiği görsel içerikler çeşitlilik açısından bazı sınırlamalara sahiptir. Teknolojinin gelişmesi ve derin öğrenme yöntemlerinin de ilerlemesi ile prosedüral yöntemler yerine derin öğrenme modeli içeren yöntemler de kullanılmaya başlamıştır. Bu yöntemlere örnek olarak Çekişmeli Üretici Ağlari, Gizli Difüzyon modelleri verilebilir. Tezdeki çalışmalarda ek olarak öğrenme aktarımı yöntemi de üretken modellerle birlikte kullanılmış ve başarısı bu yöntemlere göre sınanmıştır. Makine öğrenimi yapılabilmesi için genellikle çok büyük miktarlarda etiketli veriye ihtiyaç duyulur. Fakat her zaman çok fazla etiketli veriye sahip olmak mümkün değildir. Aynı zamanda da veriye sahip olmak ve bunların etiketlenmiş olması da maliyetli ve zaman alan bir durumdur. Öğrenme aktarımı yöntemi ise bu gerekliliği azaltmak veya ortadan kaldırmak için öne sürülmüştür. Öğrenme aktarımı yöntemi uygularken daha evvel oldukça fazla veri ile önceden eğitilmiş bir makine öğrenmesi modeli seçilir. Bu model oldukça fazla etiketli veri ile eğitildiği için olabildiğince çok örnek görmüş ve genel özellikleri öğrenmiş bir derin sinir ağı modelidir. Örneğin ImageNet gibi popüler bir verisetinde önceden eğitilmiş bir sınıflandırıcı model kullanılabilir. Seçilen modelin ilk katmanları genel özellikleri iyi şekilde öğrenmiş kullanışlı bilgiler içerir, en üstteki katmanlar ise hedef görev için uygulanabilir değildir. Bu, önceden eğitilmiş modelin bazı katmanları veya tüm katmanları dondurulabilir. Yalnızca bazı katmanları (genellikle sınıflandırma katmanları) hedef veri setine göre yeniden eğitilebilir. Böylece hedef görevdeki verisetine uygun çalışan çok daha başarılı bir model elde edilmiş olur. Öğrenme aktarımı bizim de denediğimiz gibi veri kümesinin küçük olduğu durumlarda kullanılabilir. Önceden eğitilmiş bir model kullanıldığı için eğitim süreci sıfırdan eğitme yöntemlerine göre çok daha hızlı gerçekleşir. Önceden eğitilmiş modeller çok çeşitli ve çok sayıda örnek içeren verisetlerinde eğitildikleri için daha genelleştirilebilir özelliklere sahiptir. Bu da modellerin daha fazla alanda kullanılabilir olmasını sağlar. Öğrenme aktarımı yöntemi görüntü ve doğal dil işleme alanlarında başarıyla uygulanmaktadır. Bu yöntem, genelde model başarısına olumlu etki yapar. Bu başarıyı elde etmek için uygun katmanlarda yeniden eğitme bazı katmanları dondurma işlemleri, ince ayarlama, hiperparametre optimizasyonu gibi aşamalar da uygulanır. Özetle, Öğrenme aktarımı yöntemi, daha evvel elde edilmiş bir deneyimin bir görevden diğerine aktarılmasıdır. Hızdan, etiketli veri ihtiyacından kazanç sağlarken aynı zamanda model başarısını da artırır. Çok ve çeşitli örnek içeren verilerde önceden eğitilmiş modeller bu yöntemi uygulamak için kullanılır. Çekişmeli Üretici Ağlar (Generative Adverserial Networks, GAN) imge üretimi için oldukça başarılı sonuçlar üretebilir ve oyun karakteri üretiminde de kullanılmaktadır. Çekişmeli üretici ağlar miamrisinde iki farklı derin öğrenme modeli bulunmaktadır. Bunlar Üretici ve Ayırıcı ağ olarak adlandırılır. Üretici ağ görüntü üretmekle sorumlu iken, ayırıcı ağ ise Üretici tarafından üretilmiş görüntülerin gerçek ya da sahte olduğuna karar verir. Bu iki yapay sinir ağı birbiriyle rekabet halinde eğitim aşamasını gerçekleştirirler. Üretici ayırıcı ağı gerçeğe oldukça yakın imgeler üreterek kandırmaya çalışır, Ayırıcı ise üreticinin ürettiği resimleri doğru şekilde bilmeye çalışır. Her devirde elde edilen geri bildirimler eğitimde kullanılır. Gizli Difüzyon modelleri de yüksek kalitede çözünürlükte görüntü üretmeyi sağlayan derin öğrenme yöntemlerinden biridir. Gizli Difüzyon modellerinin çalışma prensibi ise gürültü giderme ve gürültüyü tahmin etme üzerine dayanır. Bu yöntem, bir veri dağılımını modellemeyi sağlar daha sonrasında bu modeli kullanarak çeşitli veri manipülasyonlarını gerçekleştirmek için kullanılır. Bu yaklaşımda giriş görüntüsüne belirli sayıda gürültü eklemeyi ve ardından görüntüye eklenen gürültüyü tahmin etmek için bir modelin eğitimi esas alınır. Tahmin edilen gürültü, gürültülü görüntüden çıkarılarak aslında orjinal görüntü elde edilmiş olur. Bu süreç, orijinal görüntü oluşturulana kadar aşamalı olarak daha az gürültüyle tekrarlanır. Bu aşamalı gürültü giderme işlemi, modelin yüksek kaliteli görüntüler üretmesini sağlar. Gizli Difüzyon yöntemi, VAE (Varyasyonel Oto-Kod Çözücü) ve normalleştirme akışı gibi çeşitli derin öğrenme yöntemlerini de içerir. Gizli Difüzyon yönteminde önceki zaman adımlarında oluşturulmuş gizli (latent) uzay dağılımını sonraki zaman adımlarına yaymak amaçlanır. Ardışık zaman adımlarında veri oluşturulur ve gürültü gidermek için de başka bir model kullanılır. Gürültü giderme modeli için U-NET mimarisi kullanılır. Bunu sağlamak için de kelime vektörlerinden yararlanılır. Kelime vektörleri U-NET'in bütün katmanlarında girdi olarak beslenir. U-Net modelinin karmaşıklığı, girdi görüntüsü boyutuyla birlikte arttığından, girdi görüntüsünü daha düşük boyutlu bir gizli uzaya dönüştürmek için varyasyonel bir otomatik kodlayıcı (VAE) kullanılır. Gizli vektör, yinelemeli olarak oluşturulduktan sonra yüksek çözünürlüklü bir görüntüye dönüştürülür. Gizli Difüzyon modeli ayrıca, gelecekteki veri noktalarının tahminini de yapabilme yeteneğine sahiptir. Bu özellik geçmiş durumlara göre gelecekteki durumların tahmin edilmesine fayda sağlar. Gizli difüzyonun diğer üretken modellere göre bir avantajı, çekişmeli eğitime veya açık olasılık modellemesine ihtiyaç duymadan yüksek kaliteli sentetik veriler üretme yeteneğidir. Bu özellik, gizli difüzyonu mod çökmesine ve diğer üretken modellerde ortaya çıkabilecek diğer yaygın sorunlara karşı daha sağlam hale getirir. Gizli difüzyon daha karmaşık veri dağılımlarını yakalayabilir, gerçek dünya ile daha uyumlu ve başarılı sonuçlar elde etmeyi sağlar. Ancak diğer üretkem modellere göre eğitim süreci çok daha zaman alıcı ve zor, hesaplama maliyeti çok daha fazladır. Bu nedenle uygulaması çok daha zorlayıcıdr. Gizli difüzyonda istenen çıktıyı oluşturmak için çok fazla yinelenen adım vardır. Bu adımları azaltmak için de Kılavuz faktörü (Guidance) kavramı kullanılır. Özetle, Gizli Difüzyon modelleme yöntemi sentetik veri üretme, gürültü giderme, gürültü tahminleme adımalrını içeren bir derin öğrenme yöntemidir. Bu yöntem veri noktalarının zaman içindeki değişimini esas alır. Eğitim verisinde bir gizli (Latent) uzay ağı oluşturur ve bu dağılım vasıtasıyla gürültü tahminleme , tahminlenen gürültüyü çıkarma işlemlerini tekrarlayarak yaparak sentetik, yüksek çözünürlükte etkileyici görüntüler elde etmeye olanak sağlar. Bu tezde, oyunlar için görsel içerik üretimi iki farklı çalışmada ele alınmıştır. Birinci çalışmada 2 farklı rpg ve dnd karakterlerine ait görsel imge veri seti ile 6 farklı GAN modeli eğitilmiştir. 18 deneyden 3'ünde, veri kümeleri küçük boyutta olduğu için öğrenme aktarması (transfer learning) yöntemleri kullanılmıştır. Modelleri karşılaştırmak için Frechet Başlangıç Mesafesi metriği (Frechet Inception Distance) kullanılmıştır. Sonuç olarak: SNGAN her iki veri kümesinde de en başarılı olmuştur. Ayrıca; öğrenme aktarımı yöntemi (WGAN-GP, BigGAN ) sıfırdan eğitme yöntemine göre daha başarılı olduğu sonucuna varılmıştır. Tezde yer alan ikinci çalışmada ise farklı 2 hayvan ve meyve imgeleri içeren verisetinde StyleGAN ve Gizli Difüzyon yöntemleri kullanılmıştır. StyleGAN eğitimi yapılırken 8 çeşit meyve ve 3 çeşit hayvan resimleri modele koşul olarak verilmiştir ve koşullu öğrenme yöntemi uygulanmıştır. Gizli Difüzyon yönteminde verisetleri resmi anlatacak cümleler şeklinde etiketlenerek modele beslenmiştir. Elde edilen çıktılarda hem FID score hesaplanmış hem de bu çıktılar bir web oyunu haline getirilip 164 oyuncuya oynatılmıştır. Sonuç olarak, hayvan verisetinde FID puanına göre Gizli Difüzyon modelinde iyi sonuç verirken meyve verisetinde StyleGan iyi sonuç vermiş, genel puanlama da ise Gizli Difüzyon metodu daha başarılı sonuç vermiştir. Oyunculardan elde edilen skora göre ise genel puanlamada Gizli Difüzyon metodu daha iyi sonuçlar vermiştir. Bu da FID puanı ile elde edilen sonucun tutarlı olduğunu göstermektedir. Her iki çalışmada elde edilen sonuçlar birbiriyle tutarlı ve devamı niteliğinde olmuştur. Bu iki çalışma da, oyun karakteri ya da sentetik artistik görsel üretiminin derin sinir ağları kullanılarak yapılabilirliğini ortaya çıkarmıştır.
Özet (Çeviri)
Generating visual content and character design for games is generally a time-consuming process and is carried out by designers. The design process can be both costly and time-consuming for small businesses and independent developers. Working in this field requires a detailed understanding of visual aesthetics, creativity, and technical skills. It is important for the characters and visual content used in games to be compatible with the game's story, atmosphere, and gameplay. Designers and artists work to create original visual content and characters that align with the game's objectives and target audience, considering these requirements. Due to these reasons, content creation for games is a challenging process. Automating the design process helps to save time and budget. Many game companies and developers use procedural methods to automate the design process. Procedural content generation involves automatically generating game content using algorithms and rules. This approach offers significant advantages in generating repetitive content and enables developers and designers to create content faster. However, the visual content generated by these algorithms may have certain limitations in terms of diversity. With the advancement of technology and the progress of deep learning methods, approaches incorporating deep learning models have also started to be used instead of procedural methods. Examples of such methods include Generative Adversarial Networks (GANs) and Latent Diffusion models. In addition, in the studies presented in the thesis, the transfer learning method has been used in conjunction with generative models, and its success has been evaluated compared to these methods. In order to perform machine learning, a large amount of labeled data is typically required. However, it is not always possible to have access to a large labeled dataset, and obtaining and labeling data can be costly and time-consuming. The transfer learning method has been proposed to reduce or eliminate this requirement. When applying transfer learning, a pre-trained machine learning model is selected, which has been trained on a significant amount of labeled data. This model is a deep neural network that has learned general features from a large amount of labeled data. For example, a pre-trained classifier model trained on a popular dataset like ImageNet can be used. The initial layers of the selected model contain useful information about learned general features, while the top layers are not applicable to the target task. Therefore, some or all of the layers of the pre-trained model can be frozen, and only specific layers (usually the classification layers) can be retrained on the target dataset. This way, a much more successful model that is tailored to the target task's dataset is obtained. Transfer learning can be used in situations where the dataset is small, just like we have tried. Since a pre-trained model is used, the training process is much faster compared to training from scratch methods. Pre-trained models have learned generalized features from datasets that contain a wide variety and a large number of examples. This gives the models more generalizability, making them applicable to a wider range of domains. In summary, the transfer learning method involves transferring knowledge gained from previous experiences to a new task. It provides benefits in terms of speed, reduced need for labeled data, and improved model performance. Pretrained models trained on diverse and large datasets are used to apply this method effectively. Generative Adversarial Networks (GANs) can generate highly successful results for image generation and are also used in game character generation. GANs are composed of two distinct deep learning models: they are the Generator and the Discriminator. The primary role of the Generator network is to generate synthetic images, while the Discriminator network determines whether the generated images are real or fake. These two artificial neural networks compete with each other during the training phase. The Generator tries to deceive the Discriminator by generating images that are close to reality, while the Discriminator tries to identify the images generated by the Generator accurately. Feedback obtained at each iteration is used for training purposes. Latent Diffusion modeling method is a deep learning approach that involves generating synthetic data, denoising, and noise estimation. This method is based on capturing the temporal evolution of data points. It creates a latent space network in the training data, and through this distribution, it iteratively performs noise estimation and noise removal operations, allowing for the generation of synthetic, high-resolution, and impressive images. The U-Net architecture is used for the denoising model. To achieve this, word embeddings are utilized. Word embeddings are fed as input to all layers of the U-Net. The complexity of the U-Net model increases as the size of the input image increases, necessitating dimensionality reduction. Variational Autoencoders (VAEs) are used to reduce the dimensionality of the input image. By iteratively generating the latent vector, high-resolution images can be obtained. Latent Diffusion models can capture more complex data distributions and achieve more realistic and successful results that align with the real world. However, compared to other generative models, the training process of Latent Diffusion is much more time-consuming and challenging, and it also has higher computational costs. As a result, its implementation can be more demanding and resource-intensive. In this thesis, visual content generation for games is addressed in two different studies. In the first study, six different GAN models were trained using visual image datasets of two different RPG and DND characters. In 3 out of 18 experiments, transfer learning methods were used due to the small size of the datasets. The Frechet Inception Distance (FID) metric was used to compare the models. The results showed that SNGAN was the most successful in both datasets. Additionally, it was concluded that transfer learning methods (WGAN-GP, BigGAN) outperformed the training from scratch approach. In the second study presented in the thesis, a different dataset containing images of 2 different animals and fruits was used. Stylegan, and Latent Diffusion methods were employed. In the training of StyleGAN, eight types of fruit images and three types of animal images were used as conditioning inputs, and conditional learning was applied. In the Latent Diffusion method, the datasets were labeled with descriptive sentences about the images and fed into the model. FID scores were calculated for the generated outputs, and these outputs were transformed into a web game and played by 164 players. The results showed that the Latent Diffusion model performed well in the animal dataset according to the FID score, while StyleGAN performed well in the fruit dataset. In terms of the overall evaluation, the Latent Diffusion method yielded better results. According to the scores obtained from the players, the Latent Regression method also achieved better overall rankings. This indicates the consistency between the results obtained from the FID score and the player evaluation. Both studies demonstrate the feasibility of generating game characters or synthetic artistic visuals using deep neural networks and have produced consistent and continuous results.
Benzer Tezler
- Generative adversarial networks based level generation for angry birds
Çekişmeli üretici ağlar ile angry birds bölümlerinin üretilmesi
BURKAN YILMAZ
Yüksek Lisans
İngilizce
2022
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik ÜniversitesiOyun ve Etkileşim Teknolojileri Ana Bilim Dalı
DOÇ. DR. SANEM SARIEL UZER
- A framework for quest generation based on NPC motivations
Serüven üretimi için oyuncu olmayan karakter motivasyonuna dayalı bir sistem
ORÇUN AĞCA
Yüksek Lisans
İngilizce
2020
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolBahçeşehir ÜniversitesiOyun Tasarımı Bilim Dalı
DR. SERCAN SENGUN
- Video oyunlarda korku unsurunun kullanımı ve konsept tasarım çalışması
Horror in video games and a concept design application for 'the hound of baskerville'
ÜMİT HAZAL YAYALAR