質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

2774閲覧

ParticleSystem.Burstで「CS0019」のエラーが起こる

rekutasu

総合スコア13

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2020/11/14 02:44

編集2020/11/14 11:54

解決したいこと

ParticleSystem.Burst burst
burst+=100
これで、パーティクルの数を100ずつ増やしたいのだが、"+="でエラーが起こる。

問題点

error CS0019:Operator'+='cannot be applier to operands of type 'ParticleSYstem.MinMaxCurve'and'int'

C#

1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4 5public class test : MonoBehaviour 6{ 7 public ParticleSystem particle1; 8 ParticleSystem.Burst burst; 9 10 // Start is called before the first frame update 11 void Start() 12 { 13 burst.count=500; 14 } 15 16 // Update is called once per frame 17 void Update() 18 { 19 Burst(); 20 } 21 public void Burst()//パーティクルの数を変更する 22 { 23 if (Input.GetKeyDown(KeyCode.A)) 24 { 25 burst.count += 100;//エラーが起こる 26 particle1.emission.SetBurst(0, burst); 27 } 28 } 29}

考えたこと

CS0019は演算子が使用できないというエラーらしいので、ParticleSystem.burstでは'+='が使用できないのだと考える。

burst.countはshort型らしいので、整数値が使用でき'+='で計算できると思っているがここがよくわからない。
'+='以外の値を増やす方法を使用する必要があるのか。

unityが公式カンファレンス
https://docs.unity3d.com/ja/current/ScriptReference/ParticleSystem.Burst-ctor.html

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

こちらではshort型ではなく、ParticleSystem.MinMaxCurve型になっておりますが。

投稿2020/11/14 09:35

fiveHundred

総合スコア9774

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

rekutasu

2020/11/14 11:53

コメントありがとうございます。 fiveHundredさんのおっしゃる通り、MinMaxCurve型でした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問