teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

文章と提示コードを修正しました。

2021/01/22 12:03

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -1,15 +1,21 @@
1
1
  提示コードですがアルファチャンネルが適用されないせいかどうやっても画面の透明部分が白くなってしまい立方体に表示されてしまいます。これはどうしたらいいのでしょうか? 色空間のコードコメント部のコードをよく見ましたがこれは正しいです。では何が違うのでしょうか?
2
2
  試しにチャンネル数を+1していましたが出来ませんでした。
3
3
 
4
+ 提示コードの//コメント部の数字は出力結果の数値です。
5
+
6
+
7
+
4
8
  ![イメージ説明](5af0e8223f8e209f0dc51bec2f4592a9.jpeg)
5
9
 
6
10
  ```cpp
7
11
  #include "../Header/Texture.hpp"
8
12
  #include "../Header/Game.hpp"
13
+
9
14
  byte* LoadTexture(const char* str, float& width, float& height,int& channels )
10
15
  {
11
16
  cv::Mat image;
12
17
  image = cv::imread(str);
18
+ printf("image.channels: %d\n", image.channels()); // 3
13
19
 
14
20
  if (image.empty() == true)
15
21
  {
@@ -19,9 +25,9 @@
19
25
  else {
20
26
  printf("load \n");
21
27
 
22
- cv::cvtColor(image,image, cv::COLOR_BGRA2RGBA);//////////////////////////////
28
+ cv::cvtColor(image,image, cv::COLOR_BGRA2RGBA);
23
29
 
24
- printf("channels: %d\n",image.channels());
30
+ printf("channels: %d\n",image.channels()); //4
25
31
  int size = image.rows * image.cols * image.channels();
26
32
 
27
33