« C4D C.O.F.F.E.E. 変数の宣言と初期化 | トップページ | C4D C.O.F.F.E.E.のグローバル変数 »

このブログを読んでくれている方は?

たまたま別件で検索して、たまたまクリックして訪れた1回限りの人も沢山いらっしゃいます。
でも、頻繁に訪れている方も…

ありがとうございます。

頻繁に訪れていただいている方は…
グラフィックにも興味はあるけど、プログラミングやスクリプト等にも興味がある方だど…
勝手に思っています。
「興味」と書いてしまいましたが、仕事でしぶしぶC.O.F.F.E.E.を使っている方も…

知っての通り、このブログのネタはC.O.F.F.E.E.を中心にしています。

ユーザスクリプトやC.O.F.F.E.E.エクスプレッション、XPressoのC.O.F.F.E.E.ノード、それからC.O.F.F.E.E.プラグイン(プラグインには、あまり触れていませんね…)に興味のある方が読んでいただいていると思います。

「C++使い」の方には、このブログの内容は低レベルなので、読んでいる人はいないとは思いますが…

世の中には色んな人がいるので、決め付けてはいけないのですけどね…

さて、このブログを読んでいる方の中で、もうそろそろC++を始めてみようかと考えている方はいませんか?

C++は難しそうだから…
そう思って手を出さない方も中には…
C++のソースを読み書きはできるけど…知識は有るけど実際に何かを作った事が無い人とか…
コンパイラの使い方とか、設定とか、面倒くさそうで…
公開されている情報が少ない…
躊躇する理由はいくらでもあるんですけどね…
C.O.F.F.E.E.で間に合ってるとか…

C++でプラグインの作成を始めるとなると、まずは情報集めから始まるんですけどね…
まぁ、少ない情報でも、情報通りに事が進めば何も悩まずにスタートラインに立てるのですが…
情報通りに行かないで、途中でうんざりして長期保留、もしくは半永久保留。
スタートラインにも立てずにいる人もいると思います。
まぁ、スタートラインに立った人でも、スタートラインにたどり着いて安心して、一時保留で…
気が付くと長期保留という人も…

と、ここまで書きましたが、大体が自分の事だったりします。照れますね…

このブログの本当の目的は、C4Dの知り得た物凄く狭い範囲の情報を可能な限り、日本語で出す事です。

C.O.F.F.E.E.をSDKを見ながらでも組めるようになったのなら、C++も少しかじってみようよ。

C4D C++ と言うと…

残念ながらwebをあまり徘徊していないので、出せる情報は、ほとんど有りません。
その少ない情報を無造作に書いてみます。

C++でプラグインを作っている日本人。

WESTYWORLD westyさん
ずっと更新されていなかったのですが、C.O.F.F.E.E.Pluginが最近更新されたようです。

Coffee Cup Time anoanoさん
ブログを始められた頃は、「C++は出来ない」と書いていましたが…今では…凄いですね。
でも最近ブログが更新されていない。何かあったのだろうか?残念です。

人は何かのきっかけで急成長しますから、皆さん(自分)にも可能性があります。
あると信じたいですね…自分は急成長したためしがありません。

ある程度理解するまで我慢して、毎日、少しづつ、コツコツと…
そうすると、あらっ不思議。キーボードに手を乗せただけで、手が勝手に動くように…
そうなると良いですね…

では、C++を始めるならコンパイラの取得。

WinならばVisual C++ 2008 Express Edition

MacならばXcode

コンパイラを取得したら、C++プラグイン製作前のコンパイラでの作業。

Astrofish
C++ Plugin Development for Cinema4D R8
Building the Cinema4D R8 SDK under windows without buying a compiler!
R8でWinが対象で少し古いですが、基本は同じかと…

Cinema 4D - C++ plugins - NoskeWiki
こちらを書かれた方は、Macです。

CoffeeCupTimeanoanoさんが以前紹介していた作業中のキャプチャ動画(フランス語)
VC++08Ex(Win)の作業手順
コンパイラの事を知らないと、何の作業をしているのかチンプンカンプン…
上記のWikiによると、ライブラリのビルドという事。らしいのだが…
同じように作業をしていても、動画にないエラーが起こると対処不能。

他にも…
ダイアログのボタンは、なぜキャンセルなのか?
なぜ最後に保存しないのか?
なぜソリューションから削除したのか?
コンパイラの使用が初めてだと、わかりませんね。
コンパイラは、アプリケーションやライブラリ、各種プラグイン等、色々なものを作ることが可能なので、何をどう設定するか?
後は、当たって砕けろ!で本当に闘志が砕けてしまうかも知れませんが…

この動画の事は、anoanoさんも記載していましたが、フランスのC4DサイトFrenchCinema4Dのフォーラムで紹介されたものです。
Forum/Cinema 4D:Programmation/[WIP] xs Array
4ページある中の後半3/4ページ
動画のほかに文章とダイアログ等のスクリンショットがあるので、こちらも参考にして…

フランス語なので、自動翻訳なり。
そうすると微妙な所はわかりません。

作業が完了すると、C4Dのプラグインメニューに「Cinema4dsdk」が追加されます。
これが、完了の目安なのだろうか?

自分はWinなのでVC++で…

C4D Demoでも問題ないようです。

C4D R10.5 Demoです。
C_01

C4D R11 Demoです。
C_02

バージョン違いでスクリンショットを見ても、違いはそんなに無いですが…
(R10/R11)Demo版でも可能だと言うことです。
ちなみに、R11 Demoは42日のアクティベーションは、していません。

でも、上記の動画では、プラグインメニューに追加され確認が半分くらいの所で…
残り半分が、OS上でファイルをコピーしたり削除したり、ペーストしたりと…?

さて、本当に開発前のコンパイラでの作業は完了しているのだろうか?

試しにコンパイルを…

コンパイルは、どうするの?
試しのコンパイルは、Wikiを参考にしてみましょう。
でもMacかぁ…。自分はWin…。失敗に終わるか?

Tutorial 1: Hello World

  • pluginsフォルダにMyCPluginsフォルダを作成。
  • cinema4dsdk/cinema4dsdk.vcprojをMyCPluginsフォルダへコピーし名前を変える。(Hello.vcproj)
  • sourceフォルダを作成しcinema4dsdk/source/main.cppを中にコピーする。
C_07 Cinema 4D Rx
C_06 plugins
C_06 cinema4dsdk
│├C_08_3 cinema4dsdk.vcproj ※MyCPluginsフォルダへコピーし名前を変更(Hello.vcproj)
│└C_06 source
│  └C_08_4 main.cpp ※MyCPlugins/sourceフォルダへコピー
C_06_2 MyCPlugins
  ├C_08_2 Hello.vcproj
  └C_06_3 source
    └C_08 main.cpp
  • Hello.vcprojを開きソリューションエクスプローラでSource Code内の全てを削除し、
    MyCPlugins/source/main.cppをソリューションエクスプローラのSource Codeに追加します。

Source Code内を全て削除
C_09

Source Codeにmain.cppを追加。
C_05

  • main.cppにWikiのコードを入力。
    コードを直接ブログに掲載したかったのですが、著作権がありますのでWikiからコピペしてください。と言いながらもスクリンショットに…

C_04

  • ビルドを実行
  • C4Dを起動し、Pluginメニューの「Hello World」を確認。

C_03

  • 「Hello World」を実行しコンソールを確認。

This is my first plugin

目立ったエラーも無く…

これで、スタートラインに立つ事ができたわけだね…
でも、ちょっと不安が残りますが…
プラグインメニューに追加はされていますが、今までの作業は正解なのかが判断が付きません。

最後にボヤキ

残念ながら、ここまでの作業の詳しい日本語解説が無いのだ。
誰か、コンパイラでのC++プラグイン製作開始までの手順をわかりやすく日本語で解説してください。
もし解説している所があれば教えてください。
と、書いても「C++使い」の方が、C++より低いレベルのこのブログを読んでいないだろうから、呼び掛けは無意味だろうけど…

まさか…C4DとC++の組み合わせで使っている日本人が、westyさんとanoanoさんの2人だけではないと思うのだが…

C4DとC++の組み合わせが出来るという方は、レベルが高いから、バリバリ仕事をしてブログを書くほど暇じゃないのだろう…

「検索してもヒットしないから、この組み合わせで使用している人がいない。」と言うわけではないのだろう…

もしや…

「素人さんが手を出すと火傷するぜ!」
そんな感じで情報を出してくれないのだろうか?
誰しも、始めは素人さん!

もしかすると…

「こんな事も、自力で出来ないようじゃ、C++は諦めなぁ!」
こんな感じだろうか?

こんな事じゃ、日本でのC4DとC++の組み合わせでの発展が遅れるだけだよね。
ま、日本はアニメ製作では上位だから、アプリケーション開発絡みはどうでも良いですか?

「タダで情報を得ようなんて、甘いんだよ!」
確かに最近は、情報はタダじゃないけど…
じゃあ、自分はタダのお人好しだろうか?

後は諦める?

誰が何に向いているかは、やってみないとわかりませんから…
とりあえず、皆スタートラインに立ってみては…
意外と凄いプラグインを開発できるようになるかもしれませんよ。

と、言ってC.O.F.F.E.E.を断つわけではないですよ。
自分は、スタートラインに立って安心してC++を保留するパターンです。

今回の記事のタイトルでは、C++の導入とは気づかないだろう…
ま、漏れなく読んでくれている人にだけにね、少し前進…
10,000アクセス感謝を込めて…

|

« C4D C.O.F.F.E.E. 変数の宣言と初期化 | トップページ | C4D C.O.F.F.E.E.のグローバル変数 »