|
С# Средство разработки на платформе .Net |
23.02.2013, 15:15
|
#241
|
быдло
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений (для 1,489 пользователей)
|
Ответ: Вопросы по XNA.
По поводу ошибки, попробуй получит в переменную стрим, может он равен нулю, возможно формат фала не подходит.
По поповоду динамик типов, не уверен что такое вобще возможно. А выиграша уж точно не будет
|
(Offline)
|
|
23.02.2013, 15:32
|
#242
|
Нуждающийся
Регистрация: 25.11.2012
Сообщений: 83
Написано 2 полезных сообщений (для 2 пользователей)
|
Ответ: Вопросы по XNA.
нет, стрим не null, проверил... неужели png не подходит?
стрим null только если помечать спрайт не как embeded resource... или если файл не найден... тогда бросает исключение
|
(Offline)
|
|
23.02.2013, 15:42
|
#243
|
Нуждающийся
Регистрация: 25.11.2012
Сообщений: 83
Написано 2 полезных сообщений (для 2 пользователей)
|
Ответ: Вопросы по XNA.
кстати нашел еще код - результат его выполнения тот же:
public static void imagetotexture(GraphicsDevice device, ref Texture2D texture, System.Drawing.Image image)
{
if (image == null)
return;
if (texture == null || texture.IsDisposed || texture.Width != image.Width || texture.Height !=
image.Height || texture.Format != SurfaceFormat.Color)
{
if (texture != null && !texture.IsDisposed)
texture.Dispose();
texture = new Texture2D(device, image.Width, image.Height, false, SurfaceFormat.Color);
}
else
{
for (int i = 0; i < 16; i++)
if (device.Textures[i] == texture)
{
device.Textures[i] = null;
break;
}
}
using (MemoryStream mstream = new MemoryStream())
{
image.Save(mstream, System.Drawing.Imaging.ImageFormat.Png);
mstream.Seek(0, SeekOrigin.Begin);
texture = Texture2D.FromStream(device, mstream, image.Width, image.Height, false);
}
}
|
(Offline)
|
|
05.03.2013, 17:13
|
#244
|
Нуждающийся
Регистрация: 25.11.2012
Сообщений: 83
Написано 2 полезных сообщений (для 2 пользователей)
|
Ответ: Вопросы по XNA.
Здравствуйте, нужна помощь. Тема не относится именно к хна, просто тут я надеюсь скорее получить ответ.
Верно ли следующее уравнение точки p(см. рисунок) при любом положении прямой l и угле alpha?
p.y>(a.x/a.y)*p.x+a.x;
p.y<(a.x/a.y)*p.x+a.x+|L|*sec(arccos(v*L/(|v|*|L|)))
и зависит ли оно от выбора точки a как начала или конца отрезка l?
естественно, начало координат - верхний левый угол
|
(Offline)
|
|
05.03.2013, 17:24
|
#245
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы по XNA.
p.y = 1
p.x = 1
a.x = 10
a.y = 1
1 > (10/1)*1 + 10
1 > 20
|
(Offline)
|
|
05.03.2013, 17:44
|
#246
|
Нуждающийся
Регистрация: 25.11.2012
Сообщений: 83
Написано 2 полезных сообщений (для 2 пользователей)
|
Ответ: Вопросы по XNA.
так не работает все-таки? А как надо?
|
(Offline)
|
|
05.03.2013, 17:46
|
#247
|
Нуждающийся
Регистрация: 25.11.2012
Сообщений: 83
Написано 2 полезных сообщений (для 2 пользователей)
|
Ответ: Вопросы по XNA.
если неравенство неверно, значит, точка там не лежит, да?
|
(Offline)
|
|
05.03.2013, 17:46
|
#248
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы по XNA.
Сообщение от wppt
А как надо?
|
|
(Offline)
|
|
09.03.2013, 15:13
|
#249
|
Нуждающийся
Регистрация: 25.11.2012
Сообщений: 83
Написано 2 полезных сообщений (для 2 пользователей)
|
Ответ: Вопросы по XNA.
решил позаморачиваться со своим физ. движком... наткнулся на хорошую статью: http://tt.pstu.ru/mnp09/mnp09/s5/bazin.htm
кто может прокомментировать сл код:
procedure Contact_Solve(c1, c2 : PBody; c : PContact);
var
v1, v2, vr, t, j: TVector2;
vrn, jn, jnOld, bounce, e, u, mass_sum,
r1cn, r2cn, vrt, kn, nMass, jtMax, jt, jtOld,
r1ct, r2ct, kt, tMass, jnAcc, jtAcc : TReal;
begin
e := c1^.e*c2^.e; // вычисляем общий коэффициент трения поверхностей
u := c1^.f*c2^.f; // и общий коэффициент эластичности
{расчет общих коэффициентов может быть другой, например, средний арифметический: (c1^.f+c2^.f)/2.0}
jtAcc := 0.0;
jnAcc := 0.0;
v1 := V2Add(c1^.velocity, V2Mul(V2Perp(c^.r1), c1^.w));
v2 := V2Add(c2^.velocity, V2Mul(V2Perp(c^.r2), c2^.w));
vr := V2Sub(v2, v1);
vrn := V2Dot(vr, c^.n);
bounce := V2Dot(c^.n, V2Sub(v2, v1))*e;
mass_sum := 1/c1^.m + 1/c2^.m;
r1cn := V2PerpDot(c^.r1, c^.n);
r2cn := V2PerpDot(c^.r2, c^.n);
kn := mass_sum + r1cn*r1cn/c1^.i + r2cn*r2cn/c2^.i;
nMass := 1.0/kn;
jn := -(bounce + vrn)*nMass;
jnOld := jnAcc;
jnAcc := max(jnOld + jn, 0.0);
jn := jnAcc - jnOld;
t := V2Perp(c^.n);
vrt := V2Dot(vr, t);
t := V2Perp(c^.n);
r1ct := V2PerpDot(c^.r1, t);
r2ct := V2PerpDot(c^.r2, t);
kt := mass_sum + r1ct*r1ct/c1^.i + r2ct*r2ct/c2^.i;
tMass := 1.0/kt;
// трение
jtMax := u*jnAcc;
jt := -vrt*tMass;
jtOld := jtAcc;
jtAcc := min(max(jtOld + jt, -jtMax), jtMax);
jt := jtAcc - jtOld;
j := V2Add(V2Mul(c^.n, jn), V2Mul(t, jt));
// накладываем импульсы
Body_ApplyImpulse(c1,V2Negative(j),c^.r1);
Body_ApplyImpulse(c2,j,c^.r2);
end;
|
(Offline)
|
|
09.03.2013, 18:16
|
#250
|
Нуждающийся
Регистрация: 25.11.2012
Сообщений: 83
Написано 2 полезных сообщений (для 2 пользователей)
|
Ответ: Вопросы по XNA.
кто же поможет?
|
(Offline)
|
|
09.03.2013, 20:12
|
#251
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы по XNA.
ошибся форумом, это исходник паскаля
|
(Offline)
|
|
10.03.2013, 19:21
|
#252
|
Нуждающийся
Регистрация: 25.11.2012
Сообщений: 83
Написано 2 полезных сообщений (для 2 пользователей)
|
Ответ: Вопросы по XNA.
тут знание паскаля не требуется... нужна помощь именно по этой функции...
|
(Offline)
|
|
03.04.2013, 11:23
|
#253
|
Нуждающийся
Регистрация: 25.11.2012
Сообщений: 83
Написано 2 полезных сообщений (для 2 пользователей)
|
Ответ: Вопросы по XNA.
как выводить множество маленьких спрайтов? Допустим, у меня есть прямоугольная карта 100*100, и ее надо всю вывести на экран, у каждого элемента массива-карты своя текстура, вырезаемая из большой текстуры; также у каждого элемента свои собственные параметры могут быть. Проблема в том, что при многократном вызове spritebatch.draw фпс сильно падает, даже если общий размер текстуры, составленной из всех текстур всех клеток много меньше какой-нибудь другой одной достаточно большой текстуры... ах да и еще текстура самой клетки да и она сама - могут меняться...
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:31.
|