モーション研究室

ゲーム業界のモーションデザイナーが書いてるモーション講座

【Python学習】Lv08 ガチンコ8章と9章

スポンサーリンク

f:id:generalion:20200211144202j:plain

Python学習】前回の記事はコチラ▼

Python学習】Lv08 ガチンコ8章と9章

では今週の成果まとめです。 
▼ただいまこの本を読み進めています!▼

 
第8章と9章が終わりました。
f:id:generalion:20200224222853j:plain
8章ポリゴンの反転コピーをするツール
f:id:generalion:20200224222857j:plain
9章アトリビュート値をコピー&ペーストするツール
 
すんなりといく方が少なかったですが、無事に動作するところまでいけたので一安心です。
ですが正直ここまでやってきて理解できている部分は2割程度といったところです。
 
本当にこれで自分はプログラムを組めるようになるんだろうか。。。
と不安にもなっていましたが、9章の終わり際に書いてあった言葉に少し助けられました。
 
『ツール作成の雰囲気はお分かりいただけたでしょうか。興味が持てたら少しずつ理解を深めていっていただきたいと思います。』
  
  
現段階では、プログラムの組み方を体験していたに過ぎません。
  
  
大工でいったら家の建て方を棟梁にざっと見せて貰ってたようなものです。
自分で家を建てられるようになるには、木や鉄の素材、工具、コスト、ここで何を用いるか等、技術や知識を更に磨いていく必要があります。
最初は棟梁や先輩のやり方をマネしつつ、やっていくのが新米大工のやり方です。
いきなり家を建てるのは無謀ですよね。焦らずに、まずは椅子制作くらいから始めてみましょう♪
   
   
『焦るな。しかし甘えるな。』
(これは自分自身への叱咤激励です)

その他のメモ書き

QtGuiを使用するモジュールもある

第9章でもPySide2になった影響でまたもや躓いたので共有しておきます。
   
QtGui ⇒ QtWidgets に全て変えれば良いと思ってましたが例外がありました。
 
MAYAでこういうエラーが出ました。

#class StockItemModel(QtWidgets.QStandardItemModel):
# AttributeError: 'module' object has no attribute 'QStandardItemModel' # 

 
『moduleオブジェクトにQStandardItemModelがないですよ』というエラーです。
最初はスペルミスかと思いましたが違いました。
完成品と比較しても差異は無し。
後は考えられる事としてはPySide2の影響。。。
  
いろいろググってみて、ようやくHITしました。
 ⇒memox: PySide2 対応メモ
以下引用です。 

モジュールを置き換えて、QtGui → QtWidgets でいける! と思いきや...
このへんは Gui のまま

QtGui.QPen
QtGui.QFont
QtGui.QIcon
QtGui.QColor
QtGui.QImage
QtGui.QCursor
QtGui.QPalette
QtGui.QStandardItemModel

このへんは Core

QtCore.QItemSelection
QtCore.QItemSelectionModel
QtCore.QStringListModel
QtCore.QAbstractProxyModel
QtCore.QSortFilterProxyModel</span>

全部QtWidgetsにすれば良いって訳ではないんですねー。。。
以下のように変更をしたら解決しました。

class StockItemModel(QtWidgets.QStandardItemModel):
        ↓
class StockItemModel(QtGui.QStandardItemModel):
 
冒頭のImportにもQtGuiを追加
from Qt import QtCore, QtWidgets, QtGui

 
『このモジュールは いったい何の中に入っているのか?』
知る方法は無いものかといろいろ調べてみたところ。
このページを見ればある程度は分かるかなーと思えました。
 ⇒Qt Modules — Qt for Python
 
もっと簡単な方法がありそうですが、、、どなたか教えて下さいw

VisualStudioCodeに完全移行

今までは本の通りに Notepad++を使用していましたが、さすがにしんどくなってきたのでVisualStudioCodeに変えてみたら俄然、作業効率がUPしました。

・コードを予測変換してくれる
・機能拡張が豊富
・完成品との比較がしやすい
・インデントが見やすい
デバッグ機能

  
まだまだ使いこなせていない部分も多いですがコードを書くのがだいぶ楽になりました。

Amaterasu

9章を終えて筆者様・伊藤達弘氏とボーンデジタルによるMAYA補助ツール集の存在を知りました。

利用するには株式会社ボーンデジタルからのライセンスが必要との事ですね。 
オンラインドキュメントより内容は確認できます。

今後の流れ

引き続き、ガチンコツール開発部を読み進めます。
 
その後はPythonスタートブック & ツール作成にチャレンジ。

Pythonスタートブック [増補改訂版]

Pythonスタートブック [増補改訂版]

  • 作者:辻 真吾
  • 発売日: 2018/04/12
  • メディア: 大型本
 
オンライン学習はとりあえずこういうのがありますよとリンクを貼っておきます。
 ⇒Progate
 ⇒PyQ
 ⇒Udemy

まとめ

以上。【Python学習】ガチンコ8章と9章でした。
  
8章と9章はとても長い章、且つ難しい章でしたのでなかなか根気が必要でした。
MAYAでPythonを扱う本としては、比較的分かりやすい部類かと思いますので『ガチンコツール開発部』は買って損はないかと思います。
 
もう少し知識が深まってくるとこの本の価値も更に向上しそうな気はします。
 
まだ自分の知見がいろいろと足りないのを痛感しておりますので、目的意識を明確にして簡単なものから積み上げていけたらと思います。
Pythonについて書いていますが、モーションでも同じですね。
 
いきなりレベルの高いものに挑戦すると自分の不甲斐なさに自信を喪失してしまいがちです。
高難度のものにチャレンジするのも悪くはないですが、まずは簡単なものから入って自信を付けていくのも良い方法かと思います。
モチベーションを持続させる事が重要ですね。
 
本日はここまでとします。
それではまた次回!! 
   
以下、学習が終わったものをまとめておきます

学習済まとめ

Python入門第1回 Pythonの概要 プログラミングを始めよう!
オススメ度 ★★☆☆☆
媒体:Youtube
感想:専門学校講師の伊沢さんが教えてくれる。中盤以降は超初心者にはちょっと難しかった。

 

プログラミング超初心者が初心者になるためのPython入門  
オススメ度 ★★☆☆☆

媒体:本 
感想:Vol1のみAmazonPrimeで無料。1日もあれば読めます。
   分かりやすい文章だったが、情報がちょっと古いのと文字のみなのでやる気がないと読むのは大変かも。

 

【vol.001】Pythonとは | 中学生でもわかるPython入門シリーズ
オススメ度 ★★★★☆
媒体:Youtube
感想:Google Colaboratoryは少々クセがあるが、とても分かりやすい講義です。

 
  
それではまたある程度進んだらまとめます!

次回



プライバシーポリシー お問い合わせ